2017-11-28 4 views
0

私はNodeJSのための非同期を使用して、次のように配列を反復処理しています:NodeJS非同期:foreachループのアクセス結果

var async = require('async') 

async.forEach(myArray, function (entry, callback) { 
    callback(null, entry["value"] + 1) 
}, function (error, axResults_p) { 
    console.log(arguments) 
}) 

私の問題は、私は、コールバック関数に渡された二番目のパラメータにアクセスすることができないということ、です。 console.log(引数)には1つのエントリしか表示されません。しかし、私が知る限り、最初のエントリはエラーをチェックするために予約されています。

だから誰でも私が間違っていることを知っている/結果にアクセスする方法(エントリ["値"] + 1)?

ありがとうございます!

答えて

1

代わりにを使用してください。each iterate関数の結果が必要な場合。

+0

でも、最初のパラメータとしてasync.parallelまたはasync.seriesに配列を渡すことはできないようです。それは常に例外を投げます:TypeError:wrapAsync(...)はforEachを直列または並列に置き換えると関数ではありません。 – Nrgyzer

+0

この 非同期=必要なVAR( '非同期') async.map(MyArrayという、関数(エントリ、コールバック){ コールバック(NULL、エントリ[ "値"] + 1) }、関数を試みる(エラー、axResults_p ){ console.log(arguments) } –

+0

try async.map –