async function async1() {
await async2()
console.log('2')
}
function async2() {
console.log('3')
}
async1()
new Promise(function (resolve) {
console.log('6')
resolve()
}).then(function () {
console.log('7')
})
结果:3 - 6 - 2 - 7
请问,为什么 3 后面不是 2 呢?
async只是语法糖,本质还是promise,你转换下就理解了
而且这个也不难理解,等待async2执行那可不就是先3后2吗,不然await的意义在哪