console.log('1: script start');
setTimeout(() => {
console.log('2: setTimeout1');
new Promise((resolve) => {
console.log('3: promise1');
resolve();
}).then(() => {
console.log('4: then1')
})
});
new Promise((resolve) => {
console.log('5: promise2')
resolve();
}).then(() => {
console.log('6: then2');
setTimeout(() => {
console.log('7: setTimeout2')
})
})
console.log('8: script end') // 1 5 8 6 2 3 4 7
console.log(1);
async function fn() {
console.log(2);
await console.log(3);
console.log(4);
}
setTimeout(() => {
console.log(5);
}, 0)
fn();
new Promise((resolve) => {
console.log(6);
resolve();
}).then(() => {
console.log(7);
})
console.log(8); // 1 2 3 6 8 4 7 5
console.log(1);
async function fn() {
console.log(2)
new Promise((resolve) => {
resolve();
}).then(() => {
console.log("XXX")
})
await console.log(3)
console.log(4)
}
fn();
new Promise((resolve) => {
console.log(6)
resolve();
}).then(() => {
console.log(7)
})
console.log(8) // 1 2 3 6 8 xxx 4 7
console.log(1);
new Promise((resolve) => {
resolve();
}).then(() => {
console.log("XXX")
})
async function fn() {
console.log(2)
await console.log(3)
console.log(4)
new Promise((resolve) => {
resolve();
}).then(() => {
console.log("YYY")
})
}
fn();
new Promise((resolve) => {
console.log(6)
resolve();
}).then(() => {
console.log(7)
})
console.log(8) // 1 2 3 6 8 xxx 4 7 yyy