先了解什么是宏、微任务
宏任务: 包括整体代码script、setTimeout,setInterval
微任务队列:promise,process.nexttick,Object.observe(已经不用了),Mutation.observe
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/c42cfaa4d7b0c13ec87dfc4c01c8186a.png)
话不多说直接撸代码吧
console.log('1')
setTimeout(function() {
console.log('2')
process.nextTick(function() {
console.log('3')
})
new Promise(function(resolve) {
console.log('4')
resolve()
}).then(function() {
console.log('5')
})
})
process.nextTick(function() {
console.log('6')
})
new Promise(function(resolve) {
console.log('7')
resolve()
}).then(function() {
console.log('8')
})
setTimeout(function() {
console.log('9')
process.nextTick(function() {
console.log('10')
})
new Promise(function(resolve) {
console.log('11')
resolve()
}).then(function() {
console.log('12')
})
})
</font>