如何进行循环等待所有异步功能完成。异步函数里面有多个异步函数

金成

我有一个数组,例如[1,2,3,4,5,6,7,8,10]。

我喜欢一次处理一个项目。同步地。

我也混入了非异步函数。

var array = [1,2,3,4,5,6,7,8,9,10]
for(i=0; i< array.length; i++){
    var result = await fun1(array[i]);
    console(result) //expecting print out 2,4,6,8,10...20 synchronously
}

async function fun1(item){
    return fun2(item);
}
async function fun2(item){
    a = new A(item)
    return a.hello()
}

class A{
    constructor(item){
       this.item = item;
    }

    hello(){
        //do something
        return this.item * 2;
    }
}

如何在Node.JS中实现它?

Abhinab rajopadhyaya

您可以使用Promise.all功能。

const promises = [];
const array = [1,2,3,4,5,6,7,8,9,10]
array.forEach((num)=>{
  promises.push(func1(num))
});

Promise.all(promises)
.then(response => console.log(response)); // your required response

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

等待所有异步方法完成

循环中的所有异步调用完成后,如何调用函数?

如何等待所有异步完成?

如何使Parallel等待所有异步任务完成?

具有异步/等待功能的map()函数

如何使用for循环返回数组,里面有异步获取

在 Flutter 中执行之前等待所有异步函数完成

如何知道所有异步功能何时完成?

如何确保在所有异步函数完成后再次调用间隔函数?

我如何知道页面上的所有异步调用何时完成(Parse Cloud函数)?

如何测试私有异步函数

如何进行多个异步调用,然后在所有调用完成后执行一个函数?

完成所有异步Http请求后执行功能

NodeJS中没有异步功能的等待如何工作?

如何在node.js中等待带有异步请求的循环完成?

如何进行多个异步等待调用

等待完成异步 lambda 表达式中的所有异步方法

如何使Jest在期待断言之前等待所有异步代码完成执行

你如何等待所有异步调用在Java中完成?

如何在Node.js中等待所有异步任务完成?

如何等待所有异步调用完成

代码显示错误等待,尽管有异步函数,但只能在异步函数中声明

带有异步功能的箭头函数,在本机反应中等待

多个嵌套的forEach循环中的所有异步操作完成后,如何解决Promise?

如何知道所有异步HTTP调用已完成

不是具有异步功能的构造函数

带有异步的多个循环

Node.js 如何知道所有异步功能何时完成?

异步函数没有等待