JavaScript事件循环机制

一、记录一些要点

1.事件循环可以分为这样的一个过程:分别是 宏任务->执行栈->微任务

2.V8实现中,两个队列各包含不同的任务:(以下内容是以优先级来写的)

macrotasks: script(整体代码),setTimeout, setInterval, setImmediate, I/O, UI rendering
microtasks: process.nextTick, Promises, Object.observe, MutationObserver

3.优先级:process.nextTick > promise.then > setTimeout > setImmediate

4.当我们在执行setTimeout任务中遇到setTimeout时,它仍然会将对应的任务分发到setTimeout队列中去,但是该任务就得等到下一轮事件循环执行了

5.详细请参考http://www.jianshu.com/p/12b9f73c5a4f

 

posted @ 2017-07-29 14:41  25洁如  阅读(166)  评论(0编辑  收藏  举报