我有一组同类对象。我希望能够并行运行每个对象的方法。如果我要同步执行此操作,它将如下所示:
var objs = [{run:function(){}},{run:function(){}},{run:function(){}}];
for (obj in objs) {
obj.run();
}
我已经考虑过使用异步库了,但是在跳出来的时候看不到任何可行的东西。
答案 0 :(得分:1)
您可以先将对象映射到函数,然后使用async.parallel
并行调用这些函数var async = require('async')
var objs = [{run:function(){}},{run:function(){}},{run:function(){}}];
var func2call = objs.map(function(x){return x.run})
async.parallel(func2call);