async,await怎么用


async聲明一個函數是異步的,await用於等待異步完成,並且await只能在async中使用。

使用async,await並行處理請求,速度減半:

將多個promise直接發起請求,先執行async函數,再進行await操作。

 1 async function asyncAwaitfun(str){
 2   return await new Promise((resolve, reject)=>{
 3     setTimeout(()=>{
 4     resolve(str)
 5     },1000)
 6   })  
 7 }
 8 
 9 const parallel = async()=>{
10   const parallelOne = async(asyncAwaitfun('string 1'))
11   const parallelTwo = async(asyncAwaitfun('string 2'))
12 
13   console.log(async parallelOne)
14   console.log(async parallelTwo)
15 }

async,await錯誤處理:

當異步請求失敗的時候,即返回Promise對象中要處理reject狀態;

在promise當中請求reject 的時候可以用catch,為了保持代碼的健壯性,使用async,await時,我們使用try catch來處理錯誤;

 1 async function catchErr(){
 2   try{
 3     const res = await GetData() //請求后台接口
 4     if(res.code == 200){
 5      console.log('成功')
 6     }
 7   }
 8   catch(err){
 9     console.log(err)
10   }
11 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM