想要将variables传递给节点asynchronous的映射方法

我使用节点asynchronous,我想传递一个variables的方法,它使用的第二个参数…例如:

async.map(submissions, addScore, function(err, submissions) { if (submissions) { return submissions; } }); 

我想通过userIdaddScore但不知道如何做到这一点。

addScore是我每次提交时调用的方法,它需要一个userId

您可以使用闭包将userId置于addScore函数作用域中:

 var createAddScore = function(userId){ return function(val){ // do something with userID and val } } 

然后:

 async.map(submissions, createAddScore(1), function(err, submissions) { if (submissions) { return submissions; } });