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 }

猜你喜欢

转载自www.cnblogs.com/lesliejavascript/p/11014802.html
今日推荐