五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

JS中的微任務(wù)和宏任務(wù)是什么?

2022-11-01 10:11 作者:十叁みずき  | 我要投稿

JS中的語言類型

在談微任務(wù)和宏任務(wù)之前,我們首先要了解一下JS它是一種單線程的語言,也就是說它同一時間只能干同一件事.JS作為瀏覽器的腳本語言,它的主要用途在于與用戶互動,以及操作DOM,多線程并不適合它(比如一個線程添加DOM節(jié)點,一個線程來刪除DOM節(jié)點,該以哪個為準?).

JS中的異步代碼

在單線程的模式中,前一個任務(wù)結(jié)束我們才能去執(zhí)行下一個任務(wù),如果前一個任務(wù)耗時很長,后一個任務(wù)就不得不一直等著.

1

舉個簡單的例子,即使不點這個節(jié)點 123也是肯定會被打印出來的.

事件循環(huán)的任務(wù):ajax請求,定時器,事件...

JS的代碼執(zhí)行流程是?1執(zhí)行同步 2事件循環(huán) 所以上述代碼會先執(zhí)行console.log?再執(zhí)行點擊事件,明白這件事之后我們舉一個例子.

3

一個for循環(huán)包裹著一個定時器,這個執(zhí)行過程是這樣的先判斷for循環(huán)的內(nèi)容從0到3都符合那么i會自增到3,此時計時器會依次進入事件循環(huán)的隊列中,然后根據(jù)定時器,哪個快執(zhí)行哪個.

4


最終輸出的結(jié)果應(yīng)該是

5

宏任務(wù)和微任務(wù)

微任務(wù):promise.then

宏任務(wù):setTimeout...

要執(zhí)行宏任務(wù)的前提是清空了所有的微任務(wù).

流程:同步-事件循環(huán)[宏任務(wù)和微任務(wù)=>{微任務(wù)-宏任務(wù)}]

6

注意這里的new Promise是同步的 promise.then才是異步的微任務(wù).所以根據(jù)執(zhí)行流程,輸出結(jié)果為

7


JS中的微任務(wù)和宏任務(wù)是什么?的評論 (共 條)

分享到微博請遵守國家法律
九龙坡区| 册亨县| 平原县| 防城港市| 黄平县| 钟山县| 五指山市| 五莲县| 新沂市| 天门市| 甘肃省| 郴州市| 嘉定区| 庆城县| 浏阳市| 兴和县| 城口县| 苏尼特右旗| 宜章县| 襄汾县| 晋中市| 喀喇| 霍城县| 临夏县| 鲁甸县| 塔河县| 青川县| 平舆县| 宜兰市| 尼勒克县| 威信县| 贵阳市| 博野县| 璧山县| 柳江县| 拜城县| 新郑市| 新津县| 邵阳县| 无为县| 太白县|