在控制台下一段代码中运行
setTimeout(function(){
console.log(1);
}, 2);
console.log(2);
setTimeout(function(){
console.log(3);
}, 1);为什么只有3?控制台时有4个值?
发布于 2017-05-31 13:52:36
您将在控制台中获得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));
https://stackoverflow.com/questions/44286589
复制相似问题