js实现两个方式实现函数同步执行,比如先执行完B函数,再执行A函数。callback和async await
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()
})
},
更多推荐
已为社区贡献2条内容
所有评论(0)