关于事件循环

javascript 任务主要分为同步任务和异步任务

同步任务直接在主线程(主任务栈执行)

异步任务会被放入事件队列 Event Queue

异步任务会被事件队列的机制协调

主线程任务执行完毕后 到任务队列获取到相应任务推入主线程执行   如此循环往复就是事件循环 Event Loop

执行完当前主线程任务后,检查事件队列是否有微任务

如果有微任务则执行完所有微任务,然后执行一个宏任务,执行完一个宏任务后在检查是否有微任务

如果没有微任务,则执行一个宏任务,执行完一个宏任务后在检查是否有微任务

宏任务分类:

主代码块、定时器、绑定的事件(UI交互事件)

微任务分类:

promise  process.nextTick()

原文地址:https://www.cnblogs.com/jayking1314/p/14823087.html