Event Loop(事件循环)

macro-task(宏任务)→ micro-task(微任务)→ 任务源

从宏任务到微任务就是一个事件循环,任务源在第二个循环

宏任务, 微任务都是队列

宏任务源:SetTimeout,SetTimeout

微任务源:Promise

//demo

setTimeout(function() {
    console.log('timeout1');
    foo();
})

function foo(){
    //一个promise对象
}
 
new Promise(function(resolve) {
    console.log('promise1');
    for(var i = 0; i < 1000; i++) {
        i == 99 && resolve();
    }
    console.log('promise2');
}).then(function() {
    console.log('then1');
})
 
console.log('global1');

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容