JavaScript事件循环机制

JavaScript单线程执行

  • 同步栈执行完成后,再执行异步队列
  • 异步队列中分为宏任务和微任务
  • 微任务比宏任务优先执行

实例:

setTimeout(function () {
    console.log(1);
    Promise.resolve().then(function () {
        console.log(2);
    });
}, 0);
setTimeout(function () {
    console.log(3);
}, 0);
Promise.resolve().then(function () {
    console.log(4);
});
console.log(5);

结果:

5
4
1
2
3

PS:node低版本和HTML页面打印可能不一样(node运行机制不同)

你可能感兴趣的:(JavaScript事件循环机制)