node和浏览器的事件循环的区别

setTimeout(() => {
  console.log(1)
  Promise.resolve().then(() => {
    console.log(2)
  })
  Promise.resolve().then(() => {
    console.log(3)
  })
})
setTimeout(() => {
  console.log(4)
})
// 加入同步执行语句,保证上面异步操作已读取
console.log(5);

浏览器会执行
51234
浏览器每次执行宏任务列表中的一个

Node环境会执行
51423
Node环境会每次执行timers中的全部可执行任务

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容