什么是 Event Loop
JavaScript 的事件分两种,宏任务(macro-task)和微任务(micro-task)
宏任务:包括整体代码 script,setTimeout,setInterval
微任务:Promise.then(非 new Promise),process.nextTick(node 中)
事件的执行顺序——先执行宏任务,然后执行微任务,任务有同步的任务和异步的任务,
同步的进入主线程,异步的进入 Event Table 并注册函数,异步事件完成后,会将回调函数放在
队列中,如果还有异步的宏任务,那么就会进行循环执行上述的操作。