为了账号安全,请及时绑定邮箱和手机立即绑定

forEach()里面使用异步函数,那如何等所有的异步函数都执行完再 进行下一步

forEach()里面使用异步函数,那如何等所有的异步函数都执行完再 进行下一步

米琪卡哇伊 2018-10-17 16:19:20
比如var arry = [...];arry.forEach(function(elem){//异步函数})//下一步
查看完整描述

1 回答

?
qq_花开花谢_0

TA贡献1835条经验 获得超7个赞

可以使用Promise:

var arry = [...];

Promise.all(arry.map(function(elem){

  return new Promise(function(resolve, reject){

    ...

    resolve(result);

  })


})).then(function(data){

  //在这就可以等所有的返回结果可以得到

})

或者

var arry = [...];

var counter = 0;

arry.forEach(function(elem){

  //异步回调中

  counter++;

  if(counter === arr.length){

    //在这执行所有执行的完后的

  }

})


查看完整回答
反对 回复 2018-11-24
  • 1 回答
  • 0 关注
  • 4026 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信