0

私は node.js 関数を持っています:

function myFunc(callback) {
    var ret = 50; // some time consuming calculation 
    return callback(random);
}

とにかく編集できない場合、この関数がいつ完了したかを知るにはどうすればよいですか。それに別のコールバック関数をチェーンする方法はありますか。とにかく myFunc を編集せずにもう一度。

つまり、私が使用している場合:

async.forEach([1, 2, 3], function iter(myFunc(console.log), ????) {}, function(err){
    // if any of the saves produced an error, err would equal that error
});

イテレータとして何を入れますか?

すべての myFuncs が実行されたときに制御を渡すにはどうすればよいですか?

4

2 に答える 2

0
myFunc(function(ret) {
  console.log("finished");
  console.log(ret);
});
于 2012-04-23T09:09:15.803 に答える
0

何かのようなもの :

// fn wraps myFunc
var fn = function(callback) {
    // myFunc isn't altered, it is called with callback function
    myFunc(function(random) {
       console.log('done');
       callback(random);
    };
};

async.forEach([1,2,3], fn(console.log));
于 2012-04-23T09:26:06.247 に答える