天天看點

js的EventLoop事件循環機制調用棧、微任務、消息隊列執行順序優先級

優先級是調用棧 > 微任務 > 消息隊列

// 調用棧
function func() {
    console.log("func");
}

// 消息隊列
setTimeout(() => {
    console.log("setTimeout");
}, 0)


var p = new Promise((resolve, reject) => {
    console.log("Promise");
    resolve()
})

// 微任務
p.then(() => {
    console.log("then");
})

func()
/**
 * 執行結果
 Promise
 func
 then
 setTimeout
 */      

參考

2分鐘了解 JavaScript Event Loop | 面試必備

繼續閱讀