跳到主要内容

同步任务

在主线程上一次执行,形成一个执行栈。

异步任务

进入任务列队,当主线程的执行完毕,就会从任务列队中取出放到主线程执行。然后执行完毕,在获取,在执行。这个过程叫事件循环( event loop )

任务分为宏任务( MacroTask )和微任务( MicroTask )。

宏任务

宏任务( Task )由宿主发起。有: setTimeout 、 setInterval 、 Ajax 、 Dom

微任务

微任务( Jobs )由 js 发起。有: Promise 、 async/await

微任务比宏任务执行要早