理解宏任务和微任务 宏任务和微任务都是异步任务,都是在同一个任务列队中,主要区别在于他们执行顺序; 在异步列队下又分为宏任务列队和微任务列队 当一个宏任务执行结束前,会在微任务列队执行栈中查找是否有微任务,如果有则执行,没有则开启一个新的宏任务,所以微任务总是在宏任务执行结束前执行的; 宏任务 整体 script、setTimeout、setInterval、setImmediate;微任务 promise、MutationObserver;