Promise 微任務 巨集任務和同步

2021-10-09 08:05:54 字數 472 閱讀 2077

js的執行步驟是:

先執行同步,在執行微任務,最後執行巨集任務。

一下**:

let promise = new promise(resolve=>,0);

console.log('promise')

}).then(value=>console.log('then'))

console.log('外面的console')

當js順序執行的時候遇到settimeout師將其加入到巨集任務佇列,準備執行。

然後繼續執行到console.log(『promise』),then()中的任務要在resolve()執行後才將任務加入到微任務佇列,

所以先執行巨集任務中的settimeout,執行resolve,then將任務加入微任務佇列準備執行,列印』settimeout』,最後列印』外面的console』。好吧我知道,我解釋的很不好,因為比較忙,下次有空了再重新整理描述。

promise的佇列,巨集任務,微任務,同步任務

promise裡面有乙個特別的任務,就是微任務 同步任務 微任務 巨集任務 settimeout 0 代表的是巨集任務 new promise resove reject then console.log hello 這裡面輸出的結果是 同步任務 then console.log hello 同步任...

巨集任務和微任務

概念 1.巨集任務 當前呼叫棧中執行的 成為巨集任務。主 快,定時器等等 3.巨集任務中的事件放在callback queue中,由事件觸發執行緒維護 微任務的事件放在微任務佇列中,由js引擎執行緒維護。執行機制02 1.在執行棧中執行乙個巨集任務。2.執行過程中遇到微任務,將微任務新增到微任務佇列...

巨集任務和微任務

1.巨集任務 分類 settimeout setinterval requrestanimationframe 1 巨集任務所處的佇列就是巨集任務佇列 2 第乙個巨集任務列中只有乙個任務,執行主線程的js 3 巨集任務佇列可以有多個 2.微任務 分類 new promise then process...