通常,如果要稍后取消超时,则将setTimeout分配给变量。
我在控制台中写了一个简单的setTimeout,令我惊讶的是,控制台返回了一个数字。这个号码是什么意思?
<< setTimeout(function(data){console.log(data)},2000,"data passed as arg");
>> 114
答案 0 :(得分:5)
它是timer identifier,允许您稍后取消
const a = setTimeout (console.log, 1000, 'hello A')
const b = setTimeout (console.log, 1000, 'hello B')
clearTimeout (a)
// you won't see 'hello A', because it was canceled
// you will only see 'hello B'
&#13;
适用于setInterval
和clearInterval
const t = setInterval (console.log, 1000, 'hello world')
setTimeout (clearInterval, 5000, t)
// outputs 'hello world' once per second
// 5 seconds later, the interval timer is canceled
&#13;
答案 1 :(得分:4)
它是计时器的标识符。您可以将其传递给clearTimeout()
以取消操作。
答案 2 :(得分:2)
请参阅docs:
返回的timeoutID是一个正整数值,它标识通过调用setTimeout()创建的计时器;可以将此值传递给clearTimeout()以取消超时。