事件循环当中任务队列的一类任务,优先与宏任务执行
常见微任务列表:
Promise.then/.catch/.finally- 这是最常见的微任务。注意:
new Promise内部是同步的,.then里面的才是微任务。
- 这是最常见的微任务。注意:
process.nextTick(Node.js 独有)- 特权阶级:它的优先级其实比
Promise还要高。在 Node.js 中,它会在所有其他微任务之前执行。
- 特权阶级:它的优先级其实比
MutationObserver(浏览器独有)- 用于监听 DOM 结构变化的 API(如 Vue 的
$nextTick早期实现就用到过它)。
- 用于监听 DOM 结构变化的 API(如 Vue 的
queueMicrotask()- 这是标准的 Web API,专门用来手动创建一个微任务(比用 Promise 强行包装更语义化)