執行結果是不是和你想的有些不同?下面是我查閱資料后總結的同步任務和異步任務的執行順序
1、不管是同步還是異步,js都會按順序執行,只是不等待異步的執行結果而已(並不是遇到異步的就繞過不執行,別蒙了)
2、同步的任務沒有優先級之分,異步執行有優先級,先執行微任務(microtask隊列),再執行宏任務(macrotask隊列),同級別按順序執行
微任務: `process.nextTick` ,`promise` ,`MutationObserver`
宏任務:`script` , `setTimeout` ,`setInterval` ,`setImmediate` ,`I/O` ,`UI rendering`
3、await表示讓出線程,繼續執行后面的函數(執行當前函數后面的函數,不是當前函數里面的)