在控制台中运行下一个代码
setTimeout(function(){
console.log(1);
}, 2);
console.log(2);
setTimeout(function(){
console.log(3);
}, 1);
为什么4个值只有3个值?控制台
您在控制台中获得setTimeout
的返回值。
返回的
timeoutID
是一个数字,非零值,标识了setTimeout();
呼叫创建的计时器此值可以将其传递给clearTimeout()
以取消超时。知道
setTimeout()
和setInterval()
共享同一ID池可能会有所帮助,并且clearTimeout()
和clearInterval()
可以互换使用。但是,为了清楚起见,您应该始终尝试匹配它们,以避免在维护代码时
console.log(setTimeout(function(){
console.log('#' + 1);
}, 2));
console.log('#' + 2);
console.log(setTimeout(function(){
console.log('#' + 3);
}, 1));