欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

js实现两个方式实现函数同步执行,比如先执行完B函数,再执行A函数。callback和async await

程序员文章站 2022-03-07 22:02:32
1. 方式1 使用async awaitfuncA(){ return new Promise((resolve, reject) => { if(true){ resolve(你要传正确返回值) }else{ reject(你要传输错误的值) } })},......

1. 方式1  使用async await  使用promise来等待执行完成

funcA(){

     return new Promise((resolve, reject) => {
        if(true){

           resolve(你要传正确返回值)

       }else{

          reject(你要传输错误的值)

      }


    })

},
funcB(){

     return new Promise((resolve, reject) => {
        if(true){

           resolve(你要传正确返回值)

       }else{

          reject(你要传输错误的值)

      }


    })

},

接下来我们在方法c调用A和B ,如果我们希望先执行完毕B再执行A,可以这样操作,给C方法加上async,它才能使用await

async funcC(){

   //先执行完毕B,await作用就是等待这个函数执行完毕才往下走
   var resB = await this.funcB()
   //再去执行方法A
   this.funcA()
  
},

2.方式2,我们可以使用callback来完成,就是在执行完B里面,加个函数,A就在那个函数里面执行

funcA(){

   //执行你的操作
  
},

funcB(callback){

 //执行你的操作,完毕后,调用
 callback("BBB")
  
},


//调用C ,等待执行完B再去执行A
funcC(){

  //先执行完毕B
  this.funcB(function(res){
      //此时res的值就是  BBB
      //再去执行A
      this.funcA()
  })
  
},

 

本文地址:https://blog.csdn.net/life_wanghexu/article/details/112554460