我很困惑事件循环首先执行哪个任务。
原因如下。
this的Stackoverflow答案
此宏任务完成后,所有可用的微任务将已处理
this博客文章的类似示例
setTimeout(() => console.log('Macro task'), 0);
Promise.resolve().then(() => console.log('Micro task'));
所以,这对我来说很混乱。直到现在我才明白。
setTimeout()
的回调函数已插入到宏任务队列中。Promise
的回调功能已插入Micro Task Queue。这个过程是我的理解,对吗?
我想在脚本完成后立即检查微任务队列。在检查宏任务队列之前。
有关详细信息,请参见here。>>