console.log('script start') // 1 一轮 宏任务
async function async1() {
await async2()
console.log('async1 end') // 5 一轮 微任务
}
async function async2() {
console.log('async2 end') // 2 一轮 宏任务
}
async1() //
setTimeout(function() {
console.log('setTimeout') // 8 二轮 微任务
}, 0)
new Promise(resolve => {
console.log('Promise') // 3 一轮 宏任务
resolve()
})
.then(function() {
console.log('promise1') // 6 一轮 微任务
})
.then(function() {
console.log('promise2') // 7 一轮 微任务
})
console.log('script end') // 4 一轮 宏任务
console