微任务>>DOM渲染>>宏任务
宏任务:setTimeout setInterval Dom事件 AjAx请求,后于Dom渲染
微任务:Promise,async/await 先于Dom渲染
function macromicroTask(){
console.log('start')
setTimeout(()=>{
console.log('setTimeout')
},20)
new Promise ((resolve)=>{
console.log('promise')
resolve()
})
.then(()=>{
console.log('then1')
})
.then(()=>{
console.log('then2')
})
setTimeout(()=>{
console.log("setTimeout2")
},0)
console.log('end')
}
macromicroTask()