宏任務和微任務的執行順序

宏任務和微任務的執行順序

宏任務和微任務的執行順序是先宏後微。先執行同步代碼,遇到異步宏任務則將異步宏任務放入宏任務隊列中,遇到異步微任務則將異步微任務放入微任務隊列中,當所有同步代碼執行完畢後,再將異步微任務從隊列中調入主線程執行,微任務執行完畢後再將異步宏任務從隊列中調入主線程執行,一直循環直至所有任務執行完畢。

宏任務有:script (可以理解為外層同步代碼);setTimeout/setInterval3;UI rendering/UI事件;postMessage,MessageChannel5. setImmediate,I/O()

微任務有:Tick(); rve(已廢棄;Proxy 對象替代);MutaionObserver。