第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何理解process.nextTick(fn) 早于 setTimeout(fn,0) 執(zhí)行

如何理解process.nextTick(fn) 早于 setTimeout(fn,0) 執(zhí)行

紅顏莎娜 2019-02-06 13:19:49
function compareFunc () {  console.log(1);  setTimeout(function () {    console.log(2);  }, 1);  process.nextTick(function () {    console.log(3);  });  setTimeout(function () {    console.log(4);  }, 0);}compareFunc();// 執(zhí)行結(jié)果://1//3//2//4這個圖該怎么理解。根據(jù)這個圖,timers 不是在dile觀察者前面嗎?
查看完整描述

2 回答

?
守候你守候我

TA貢獻1802條經(jīng)驗 獲得超10個贊

牽扯到了js的單線程運行機制,因為機制規(guī)定的原因,所以簡單粗暴的理解為:
1、setTimeout和setInterval在指定的運行時間到了后會查看本輪event loop是否執(zhí)行完畢;
2、如果完畢就執(zhí)行其中的回調(diào),沒有則會被移出本輪event loop放到下一輪進行判斷,而process.nextTick與promise則會在本輪event loop結(jié)束后立即執(zhí)行;
3、所以setTimeout代碼書寫在前面或者后面并不會對process.nextTick的執(zhí)行產(chǎn)生影響,因為他就是優(yōu)先級最低的(個人理解);

如果對其中的原因感興趣可以去網(wǎng)上查閱js運行機制和event loop的相關資料


查看完整回答
反對 回復 2019-02-26
  • 2 回答
  • 0 關注
  • 849 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號