国产一区二区精品-国产一区二区精品久-国产一区二区精品久久-国产一区二区精品久久91-免费毛片播放-免费毛片基地

千鋒教育-做有情懷、有良心、有品質的職業教育機構

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領取全套視頻
千鋒教育

關注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術干貨  > 對事件循環的理解

對事件循環的理解

來源:千鋒教育
發布人:wjy
時間: 2022-09-07 16:55:53 1662540953

因為 js 是單線程運行的,在代碼執行時,通過將不同函數的執行上下文壓入執行棧中來保證代碼的有序執行。在執行同步代碼時,如果遇到異步事件,js 引擎并不會一直等待其返回結果,而是會將這個事件掛起,繼續執行執行棧中的其他任務。當異步事件執行完畢后,再將異步事件對應的回調加入到一個任務隊列中等待執行。任務隊列可以分為宏任務隊列和微任務隊列,當當前執行棧中的事件執行完畢后,js 引擎首先會判斷微任務隊列中是否有任務可以執行,如果有就將微任務隊首的事件壓入棧中執行。當微任務隊列中的任務都執行完成后再去執行宏任務隊列中的任務。

Event Loop 執行順序如下所示:首先執行同步代碼,這屬于宏任務當執行完所有同步代碼后,執行棧為空,查詢是否有異步代碼需要執行執行所有微任務當執行完所有微任務后,如有必要會渲染頁面然后開始下一輪 Event Loop,執行宏任務中的異步代碼

tags:
聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。
10年以上業內強師集結,手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關推薦HOT