有 3 个宏任务,5 个微任务,第一个宏任务刚刚执行完毕。 问:剩下的任务的执行顺序。
当时我想都不想答 5 个微任务先执行,然后执行剩下 2 个宏任务,面试官答不对,还需要了解下宏任务微任务执行机制。网上好像都搜不到类似的题。拿下列代码试,结果也不对。
setTimeout(_=>{
console.log(1);
setTimeout(_=>console.log(2));
setTimeout(_=>console.log(3));
Promise.resolve().then(_ => console.log('a'))
.then(_ => console.log('b'))
.then(_ => console.log('c'))
.then(_ => console.log('d'))
.then(_ => console.log('e'));
});
不知大家有啥想法