async函數會返回一個Promise對象,可以使用then方法添加回調函數,
當async函數有return時,會作為success的參數
當async函數有拋錯時,會作為fail的參數。
當函數執行的過程中遇到了await執行的函數的時候,會暫時return當前函數,
去執行await的函數,把await后面的語句放入到微任務當中,當一步操作完成之后,再返回來執行await后面的語句。
如下是一個sleep函數
function sleep( interval ){
return new Promise( resolve => {
setTimeout( resolve, interval)
} )
}
await sleep( 2000 );
console.log( 'hello' );
這樣就實現了js的暫停