JavaScript setTimeout(),第二个参数为0

时间:2019-02-20 18:37:57

标签: javascript asynchronous settimeout

在下面的代码中,我将setTimeOut()的第二个参数设置为0。

console.log(1);
setTimeout(() => {
    console.log(2);
}, 0);
for(let i = 3; i < 1000; i ++)
    console.log(i);

我希望它会在很长的循环中的某个时刻而不是在结束时执行console.log(2),因为在循环的迭代之间,调用堆栈为空,因此执行console.log(2)的匿名函数应该被推送到回调队列,然后执行。

那么,为什么console.log(2)只在循环结束时执行?我想念什么吗?

0 个答案:

没有答案