【初级】事件循环输出题
【初级】事件循环:输出结果
setTimeout(()=>console.log("d"), 0)
var r = new Promise(function(resolve, reject){
resolve()
});
r.then(() => {
var begin = Date.now();
while(Date.now() - begin < 1000);
console.log("c1")
new Promise(function(resolve, reject){
resolve()
}).then(() => console.log("c2"))
});
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
// 打印结果:
// c1
// c2
// d
1
2
3
4
2
3
4
【初级】事件循环:输出结果,说明原因
setTimeout(() => {
console.log(1);
}, 0);
console.log(2);
(new Promise((resolve) => {
console.log(3);
})).then(() => {
console.log(4);
});
console.log(5);
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
- B-回答出正确的结果 2 3 5 1
- A-从 JavaScript 异步任务的角度给出原因,以及结果中为什么没有 4
- S-可以完整阐述 JavaScript 事件循环机制