async,await怎麼用

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

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

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

 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狀態;spa

在promise當中請求reject 的時候能夠用catch,爲了保持代碼的健壯性,使用async,await時,咱們使用try catch來處理錯誤;code

 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 }
相關文章
相關標籤/搜索