谁能解释这段代码中 setImmediate 和 setTimeout 的输出?
Can anybody explain the output of setImmediate and setTimeout in this code?
以下代码中 setImmediate
和 setTimeout
的输出是什么:
console.log("11111");
setImmediate(function A(){
console.log("2222");
});
console.log("3333");
setTimeout(function B(){
console.log("4444");
},0);
console.log("5555");
输出:
11111
3333
5555
4444
2222
当我将 setTimeout
时间更改为 10 时,输出:
11111
3333
5555
2222
4444
任何人都可以向我解释这种行为吗?
setImmediate()
用于打断长时间的运行ning操作和运行浏览器完成其他操作如事件和显示更新后立即回调函数。
setTimeout()
在指定的毫秒数后调用函数或计算表达式。这意味着即使浏览器尚未完成,它已经在内部运行一个功能。
当您输入 10
时,它只会在 10 毫秒 后起作用,这很可能是您的浏览器已经完成。
以下代码中 setImmediate
和 setTimeout
的输出是什么:
console.log("11111");
setImmediate(function A(){
console.log("2222");
});
console.log("3333");
setTimeout(function B(){
console.log("4444");
},0);
console.log("5555");
输出:
11111
3333
5555
4444
2222
当我将 setTimeout
时间更改为 10 时,输出:
11111
3333
5555
2222
4444
任何人都可以向我解释这种行为吗?
setImmediate()
用于打断长时间的运行ning操作和运行浏览器完成其他操作如事件和显示更新后立即回调函数。
setTimeout()
在指定的毫秒数后调用函数或计算表达式。这意味着即使浏览器尚未完成,它已经在内部运行一个功能。
当您输入 10
时,它只会在 10 毫秒 后起作用,这很可能是您的浏览器已经完成。