console.log('script start');
async function async1() {
await async2();
console.log('async1 end');
}
async function async2() {
setTimeout(function() {
console.log('async2 end');
}, 0);
}
async1();
setTimeout(function() {
console.log('setTimeout');
}, 0);
new Promise(resolve => {
console.log('promise1');
resolve();
}).then(function() {
console.log('promise2');
});
console.log('script end');
script start
promise1
script end
async1 end
promise2
async2 end
setTimeout
console.log('script start');
setTimeout(function() {
console.log('setTimeout1');
new Promise(function(resolve) {
console.log('promise1');
resolve();
}).then(function() {
console.log('promise2');
});
}, 0);
setTimeout(function() {
console.log('setTimeout2');
}, 0);
new Promise(function(resolve) {
console.log('promise3');
resolve();
}).then(function() {
console.log('promise4');
});
console.log('script end');
console.log('script start');
setTimeout(function() {
console.log('setTimeout1');
new Promise(function(resolve) {
console.log('promise5');
resolve();
}).then(function() {
console.log('promise6');
});
}, 0);
new Promise(function(resolve) {
console.log('promise1');
resolve();
}).then(function() {
console.log('promise2');
setTimeout(function() {
console.log('setTimeout2');
}, 0);
}).then(function() {
console.log('promise3');
});
console.log('script end');
console.log('script start');
async function async1() {
await async2();
console.log('async1 end');
}
async function async2() {
console.log('async2 end');
}
async1();
setTimeout(function() {
console.log('setTimeout');
}, 0);
new Promise(resolve => {
console.log('promise1');
resolve();
}).then(function() {
console.log('promise2');
});
console.log('script end');