async function asy1(){
console.log('asy1 start')//2
await asy2() //停,立即执行asy2,3
console.log('asy1 end')//相当于then方法的回调,进入微任务队列,6
}
async function asy2(){
console.log('asy2')// 3
}
console.log('sc start')//执行第一个宏任务script里的同步代码,1
setTimeout(()=>{
console.log('timeout')
},0)//进入宏任务,最后打印,8
asy1()//执行
new Promise(function(resolve){
console.log('pro1') //同步代码,4
resolve()
}).then(function(){
console.log('pro2')//进入微任务队列,排在asy1 end后,7
});
console.log('sc end') //同步代码,5