全局上下文(script标签)被推入执行栈,同步代码执行,在执行的过程中,会判断是同步任务还是异步任务,通过对一些接口的调用 ,可以产生新的macro-task与micro-task, 它们会分别 被推入各自的任务队列里。同步代码 执行完了,script脚本会被移出macro队列,这个过程本质上是队列的macro-task的执行和出险的过程。
上一步我们出队的是一个macro-task 这一步我们处理的是micro-task。但需要注意的是:当macro-task出险时,任务是一上一个执行的,而micro-task出队时,任务是一队一队执行的,因此我们处理micro队列这一步,会逐个执行队列中的任务并把它出队,直到队列被清空
执行渲染操作,更新界面
检查是否存在web worker任务 如果有,则对其进行处理
过程循环往复,直到两个队列都清空。
---Every day to be a little better---
网友评论