js事件循环机制EventLoop

119 阅读1分钟

HEY,小伙伴们!

EventLoop即事件循环机制,众所周知js 是单线程执行的,所有任务都在一个线程上完成。如果执行多个任务,排队执行势必要等待,引起资源浪费,所以eventLoop就产生了。主线程执行同步任务,eventLoop执行异步任务,这样就可以减少资源的浪费!

异步执行又分宏任务和微任务,

宏任务常见的script全部代码、setTimeout、setInterval、setImmediate(浏览器暂时不支持,只有IE10支持)I/O、UI Rendering。

微任务Process.nextTick(Node独有)、Promise、Object.observe(废弃)、MutationObserver

同步异步执行事件中 先执行同步任务再执行微任务,最后执行宏任务

欢迎小伙伴们留言补充指正!