event-loop开始的时候,会从全局一行一行的执行,遇到函数调用,会压入到调用栈中,被压入的函数被称之为帧,当函数返回后会从调用栈中弹出

js中的异步操作,比如fetch、setTimeout、setInterval压入到调用栈中的时候里面的消息会进去到消息队列中去,消息队列中会等到调用栈清空之后再执行

promise、async、await的异步操作的时候会加入到微任务中去,会在调用栈清空的时候立即执行,调用栈中加入的微任务会立马执行

普通代码

 ↓

promise等

 ↓

fetch等