您好,登錄后才能下訂單哦!
本篇內容主要講解“怎么使用js async函數”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“怎么使用js async函數”吧!
async函數是Generator函數的語法糖,async函數就是將Generator函數的星號(*)替換成async,將yield替換成await,僅此而已。
async函數對Generator函數的改進點
內置執行器,不需要像Generator函數要去調用next()才能讓函數執行
更好的語義化
返回的是promise對象
async函數返回promise對象
async函數返回一個Promise對象。async函數內部return語句返回的值,會成為then方法回調函數的參數。async函數內部拋出錯誤,會導致返回的Promise對象變為reject狀態。拋出的錯誤對象會被catch方法回調函數接收到
下面見例子:
lettestAsync=asyncfunction(){
//thrownewError('拋出一個錯誤~');
reject()
};
testAsync().then(resolve=>{
console.log(`resolve:${resolve}`);
},reject=>{
console.log(`reject:${reject}`);//狀態變化成reject的回調函數會執行,如果這里沒有回調函數,則catch會捕獲,這就是promise的東西了
}).catch(err=>{
console.log(`err:${err}`);
})
任何一個await語句后面的Promise對象變為reject狀態,那么整個async函數都會中斷執行。
asyncfunctionf(){
awaitPromise.reject('出錯了');
awaitPromise.resolve('helloworld');//不會執行
}
//第二行的promise語句不會執行
到此,相信大家對“怎么使用js async函數”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。