- 回调队列中的任务被称为宏任务
- 宏任务执行过程中可以临时加一些额外的需求, 对于这些需求可以选择进入队列中进行排队, 也可以作为当前任务的”微任务”, 直接在当前这个任务结束后立即执行
- Promise的回调是作为微任务执行的, 会在本轮调用结束的末尾调用回调, 而微任务可以提升整体的响应能力
- 绝大部分的异步处理都会作为宏任务进入队列
console.log('start')
setTimeOut(() => {
console.log('setTimeOut')
})
Promise.resolve().then(() => {
console.log('promise1')
}).then(() => {
console.log('promise2')
})
console.log('end)
// start
// end
// promise1
// promise2
// setTimeOut