为什么微任务比宏任务执行快

为什么微任务比宏任务执行快

  1. 微任务叫 microtask 称为 jobs,是由JavaScript自身发起的
  2. 宏任务叫 macrotask 称为 task,是由宿主环境发起的

Event Loop中,每一次循环称为tick

主要区别

宏任务(macrotask)微任务(microtask)
谁发起的Nodejs/浏览器JavaScript自身
具体事件script 标签
setTimeout/setInterval
UiRendering
postMessage/messageChannel
setImmediate/IO
Promise
MutationObserver
process.nextTick
谁先执行后执行先执行
会触发新一轮的tick吗不会