setTimeout定时器setTimeout(fn, 0)的用法

发布时间 2023-09-06 17:46:03作者: nini-
setTimeout(() => {
     console.log("一秒后执行")
}, 1000)

一般我们使用定时器时会给一个时间,让它等待多久进行执行,但是这个时间也可以是0。

如果是setTimeout(fn,0)的写法并不代码里面的函数立即执行,而是立即被放入队列之中排队等待前面的代码执行完毕再进行执行。

因此它是否是立即执行其实不是取决于setTimeout设定的时间,而是看队列中前面是否有其他进程需要等待。

function a() {
     setTimeout(function(){
        alert(1)
     }, 0);
     alert(2);
}
a();        

比如这段代码执行的结果是2,1,而不是1,2。