setTimeout定时器setTimeout(fn, 0)的用法
setTimeout(() => {
console.log("一秒后执行")
}, 1000)
一般我们使用定时器时会给一个时间,让它等待多久进行执行,但是这个时间也可以是0。
如果是setTimeout(fn,0)的写法并不代码里面的函数立即执行,而是立即被放入队列之中排队等待前面的代码执行完毕再进行执行。
因此它是否是立即执行其实不是取决于setTimeout设定的时间,而是看队列中前面是否有其他进程需要等待。
function a() {
setTimeout(function(){
alert(1)
}, 0);
alert(2);
}
a();
比如这段代码执行的结果是2,1,而不是1,2。

浙公网安备 33010602011771号