async await 等待 异步函数的执行 或者 promise函数的执行

92 阅读1分钟

async await 等待 异步函数的执行 或者 promise函数的执行,等到结果后,再执行后面的代码。可以避免多层then嵌套。

// 第一个例子
function aa(fn){
    let ss;
    return async(arg)=>{
        try{
               var res= await fn(arg);//等待 Promise 函数的执行结果
                console.log("111",res); 
                 return res;
            }catch{
            console.log("error")
                
            }
    }
    
}

function promise2(param){
    return new Promise((resolve,reject)=>{
        setTimeout(()=>{
            resolve('chenggong22',param)
        },3000)
        
    })
}

async function  bb(){
  var res2= await aa(promise2)('参数');//等待 async 函数的执行结果
  console.log("222",res2);
}
bb();
 //第二个例子
 async function aa(fn,arg){
        try{
               var res= await fn(arg);//等待 Promise 函数的执行结果
                console.log("111",res); 
                 return res;
            }catch{
            console.log("error")
                
            }
    }
    

function promise2(param){
    return new Promise((resolve,reject)=>{
        setTimeout(()=>{
            resolve('chenggong22',param)
        },3000)
        
    })
}


async function  bb(){
  var res2= await aa(promise2,'参数');//等待 async 函数的执行结果
 console.log("222",res2);
}
bb();