一尘不染

Node.js-使用异步库-带有对象的async.foreach

node.js

我正在使用 节点异步 库-https:
//github.com/caolan/async#forEach,想遍历一个对象并打印出其索引键。一旦完成,我想执行一个回调。

这是我到目前为止所'iterating done'看到的,但是从未见过:

    async.forEach(Object.keys(dataObj), function (err, callback){ 
        console.log('*****');

    }, function() {
        console.log('iterating done');
    });
  1. 为什么不调用最终函数?

  2. 如何打印对象索引键?


阅读 353

收藏
2020-07-07

共1个答案

一尘不染

由于async.forEach要求您callback为每个元素调用该函数,因此不会调用最终函数。

使用这样的东西:

async.forEach(Object.keys(dataObj), function (item, callback){ 
    console.log(item); // print the key

    // tell async that that particular element of the iterator is done
    callback();

}, function(err) {
    console.log('iterating done');
});
2020-07-07