一、一个线程中,事件循环是惟一的,可是任务队列能够拥有多个。html
二、任务队列又分为macro-task(宏任务)与micro-task(微任务),在最新标准中,它们被分别称为task与jobs。html5
三、macro-task大概包括:script(总体代码), setTimeout, setInterval, setImmediate, I/O, UI rendering。线程
四、micro-task大概包括: process.nextTick, Promise, Object.observe(已废弃), MutationObserver(html5新特性)server
五、setTimeout/Promise等咱们称之为任务源。而进入任务队列的是他们指定的具体执行任务。htm
六、来自不一样任务源的任务会进入到不一样的任务队列。其中setTimeout与setInterval是同源的。队列