HEY,小伙伴们!
EventLoop即事件循环机制,众所周知js 是单线程执行的,所有任务都在一个线程上完成。如果执行多个任务,排队执行势必要等待,引起资源浪费,所以eventLoop就产生了。主线程执行同步任务,eventLoop执行异步任务,这样就可以减少资源的浪费!
异步执行又分宏任务和微任务,
宏任务常见的script全部代码、setTimeout、setInterval、setImmediate(浏览器暂时不支持,只有IE10支持)I/O、UI Rendering。
微任务Process.nextTick(Node独有)、Promise、Object.observe(废弃)、MutationObserver
同步异步执行事件中 先执行同步任务再执行微任务,最后执行宏任务
欢迎小伙伴们留言补充指正!