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