async function async1 () {
console.log('async1 start');
await async2();
console.log('async1 end');
}
async function async2 () {
console.log('async2')
}
console.log('script start')
setTimeout(function() {
console.log('setTimeout')
}, 0);
async1();
new Promise(function (r) {
console.log('promise1');
r();
}).then(function() {
console.log('promise2')
});
console.log('script end');
1.事件循环输出顺序
script star
async1 start
async2
promise
script end
async1 end
promise2
setTimeout
表达上面的promise2
console.log('async1 start');
new Promise(function (r) {
console.log('async2')
r();
}).then(function() {
console.log('async1 end');
});