题目描述
求解这段代码的输出顺序:
console.log('begin');
setTimeout(() => {
console.log('setTimeout 1');
Promise.resolve()
.then(() => {
console.log('promise 1');
setTimeout(() => {
console.log('setTimeout2');
});
})
.then(() => {
console.log('promise 2');
});
new Promise(resolve => {
console.log('a');
resolve();
}).then(() => {
console.log('b');
});
}, 0);
console.log('end');
实际输出顺序为:
begin
end
setTimeout 1
a
promise 1
b
promise 2
setTimeout2
谁能解释一下为什么是这个顺序呢?万分感谢
开心每一天1111
繁花如伊
随时随地看视频慕课网APP
相关分类