對于 JS 運行中的任務(wù),JS 有一套處理收集,排隊,執(zhí)行的特殊機(jī)制,我們把這套處理機(jī)制稱為事件循環(huán)(Event Loop)
宏任務(wù)、微任務(wù):宏任務(wù)就是普通異步任務(wù),是最早出現(xiàn)的,微任務(wù)更關(guān)乎用戶體驗,所以得優(yōu)先執(zhí)行
常見宏任務(wù):定時器、IO任務(wù)
常見微任務(wù):queueMicrotask、await、then

demo
執(zhí)行順序? aaa、111 、222、bbb 、333、444、t1、t2
解析:
1.首先執(zhí)行 aaa? ?遇到t1放入任務(wù)隊列
2.再執(zhí)行111 222 (async 是異步函數(shù) 但函數(shù)本身是同步?await相當(dāng)于then ) 333和后面的將被放入微任務(wù)隊列 接著執(zhí)行bbb
3.當(dāng)前任務(wù)完成 先執(zhí)行微任務(wù)隊列 333 t2放入任務(wù)隊列 然后444 所有微任務(wù)完成 執(zhí)行任務(wù)隊列 t1? t2