下面打印的顺序
1.低
console.log(1);
setTimeout(() => {
console.log(2);
}, 0);
console.log(3);
2.中
console.log(1);
Promise.resolve().then(() => console.log(2));
console.log(3);
3. 高
console.log(1);
setTimeout(() => {
Promise.resolve().then(() => console.log(2));
console.log(3);
}, 0);
console.log(4);
4.高
console.log(1);
setTimeout(() => {
console.log(2);
Promise.resolve().then(() => console.log(3));
setTimeout(() => console.log(4), 0);
}, 0);
console.log(5);
5.高
console.log(1);
setTimeout(() => {
console.log(2);
setTimeout(() => {
console.log(3);
setTimeout(() => console.log(4), 0);
Promise.resolve().then(() => console.log(5));
}, 0);
}, 0);
console.log(6);
6.
console.log(1);
setTimeout(() => {
Promise.resolve().then(() => console.log(2));
console.log(9)
delay(2000)
console.log(3);
}, 0);
console.log(4);
function delay(time) {
const start = Date.now()
while(Date.now() - start < time){
}
}
7
console.log(1);
setTimeout(() => {
Promise.resolve().then(() => console.log(11));
console.log(9)
Promise.resolve().then(() => console.log(22));
delay(2000)
Promise.resolve().then(() => console.log(33));
console.log(3);
Promise.resolve().then(() => console.log(44));
}, 0);
console.log(4);
function delay(time) {
const start = Date.now()
while(Date.now() - start < time){
}
}