js之同步与异步
js之同步与异步
这里纯粹是个人的总结
概念:
同步 异步 宏任务 微任务
思想:
异步代码由同步代码产生
微任务由宏任务产生
事件循环:
- 从 主执行栈 / 宏任务队列 中取出一个宏任务执行 => 将可能产生新的 异步宏任务 / 微任务
- 不断的从微任务队列中取出 到主执行栈 执行 => 将可能产生新的 微任务
- 微任务队列为空 结束 开始新一轮循环
async/await:
遇到await后 将await所在语句封装为promise对象内容
同时将函数剩下的代码封装为promise的then方法