宏任务与微任务
来源:6-4 this 有几种赋值情况

慕粉2331556623
2020-08-19
老师,能解释一下为什么输出顺序会是这样的啦?
写回答
3回答
-
_zion_
2020-12-11
1 脚本1宏任务入栈 同步输出start setTimeout计时结束添加回调到宏任务队列 添加promise回调函数到微任务队列 宏任务结束阶段, js run任务退出栈,栈为空,微任务入栈 执行微任务打印promise1 2 脚本2宏任务入栈 同步输出end setTimeout计时结束添加回调到宏任务队列 添加promise回调函数到微任务队列 添加requestAnimationFrame回调函数到宏任务队列 宏任务结束阶段, js run任务退出栈,栈为空,微任务入栈 执行微任务打印promise2 3 requestAnimationFrame添加的宏任务入栈 输出requestAnimationFrame 4 setTimeout添加的宏任务入栈 输出setTimeout1 5 setTimeout添加的宏任务入栈 输出setTimeout2
00 -
可乐比酒更醉人
2020-09-18
我个人理解 是首先执行一个script代码 先执行start 然后 promise1 settimeout()加入到事件队列 开始执行 第二个 script代码 首先执行同步任务 end 然后执行了 primise 2 然后你那个顺序 原因嘛 宏任务与微任务 先判断当然执行栈 有没有宏任务 执行结束后 判断有没有微任务 然后执行 渲染 然后轮训继续判断
00 -
双越
2020-08-19
具体哪一步开始没看懂的?可以说一说你对代码的理解,和疑惑的地方。
00
相似问题