與下面的模擬代碼(_涉及lodash庫):傳遞額外參數的函數調用(lodash)
var containerFunction = function() {
var opts = {data: value};
_.map(lines, functionForEach);
}
var functionForEach = function (line) {
Do something for each line passed in from the maps function.
Need to access opts in this scope.
return value;
}
的論點線從map函數收到,但什麼是最好的將opts參數傳遞給functionForEach函數的方法,同時保持上面的粗略模式(如果可能)。
我想是這樣的:
_.map(lines, functionForEach(opts))
或類似可能的工作的東西,但顯然不會。
有什麼建議嗎?
將'functionForEach'放入'containerFunction'中。如果您必須將'opts'作爲第三個'context'('thisArg')參數傳遞給'_.map',並在'functionForEach'內部使用'this'來訪問它。 –
我不想嵌套這個函數,因爲我從性能和內存的角度看到了它所皺起的印象。 – Seonixx
你從哪裏得到這樣的印象?即使是這種情況,事實並非如此,首要任務應該是讓代碼乾淨利落,然後擔心性能。 –