1、所有任务都在主线程上执行,形成一个执行栈。2、主线程发现有异步任务,如果是微任务就把他放到微任务的消息队列里,如果是宏任务就把他放到宏任务的消息队列里。3、执行栈所有同步任务执行完毕。4、执行微任务队列,之后再执行宏任务队列。5、轮询第4步。
01event-loop.mp4
01event-loop.mp4
<div class="app"></div><script>async function fn1(){console.log("100");await fn2();//await 将函数切割,后面的代码变成异步的console.log("300");}async function fn2(){console.log("fn2");await 200;console.log("end");}fn1();console.log("middle");</script>
