我有一個問題想出如何使用不同參數的函數數組。我正在使用coffeescript和async,但我認爲這是一個問題與我的理解的JavaScript。Async.parallel與任務數組
我想用不同的任務創建一個函數數組。
names = ['Jeff', 'Maria', 'Steve']
tasks = []
for name in names
tasks.push (callback)=>
@controller.get_person name, (person) =>
callback(null, person)
async.parallel(tasks, cb)
問題是,任務與史蒂夫(總是最後一個在數組中)三次調用。我如何做到這一點,以便每個名稱都有一項任務?
可能重複[Javascript閉合內部循環 - 簡單實用示例](http://stackoverflow.com/questions/750486/javascript-closure-inside-loops-simple-practical-example) – Bergi
可能重複[閉合範圍沒有被捕獲? - Coffeescript](http://stackoverflow.com/questions/11996218/closure-scope-not-captured-coffeescript) –
@Bergi提供了一個通用的JavaScript解決方案,也將適用於CoffeeScript,我的重複包括CoffeeScript特定的'do '關鍵字。拿你的選擇。 –