ue 题解宏任务和微任务:
宏任务: 当前调用栈中执行的代码成为宏任务 (主代码块 定时器等等)
微任务: 当前(此次事件循环中)宏任务执行完, 在下一个宏任务开始之前需要执行的任务,可以理解成回调事件 (promise proness nextTick等)
上个图 看一下他们
宏任务: setTimeOut, setInterval, Ajax, Dom事件
微任务: Promise async/await
微任务执行比宏任务要早
下面的面试题 来看一下他们的执行顺序
他的答案是 start,promise,end,then1,then2,setTimeout
原理 按照顺序先执行 start, promise是微任务先执行, 然后then1 then2是异步的 所以先执行 end,然后在执行then1 then2 执行完成后 settimeout是宏任务 最后执行