Eri*_*ric 14 javascript node.js underscore.js
假设我有一个函数和一个数组.我想通过将函数应用于数组中的每个条目来修改数组.该函数不直接修改该值; 它返回一个新值.
在伪代码中
for (entry in array) {
entry = function(entry);
}
Run Code Online (Sandbox Code Playgroud)
有几种方法可以解决这个问题:
for (var i = 0; i < arr.length; i++) {
arr[i] = fn(i);
}
Run Code Online (Sandbox Code Playgroud)
或者,因为我使用node.js并且内置了下划线:
arr = _.map(arr, fn);
Run Code Online (Sandbox Code Playgroud)
但这看起来有点笨重.标准的"for"块感觉过于冗长,_. map函数重新分配整个数组,因此感觉效率低下.
你会怎么做?
是的,我知道我正在思考这个:)
fen*_*ent 25
所述阵列#地图()方法.
var arr = arr.map(fn);
Run Code Online (Sandbox Code Playgroud)
_.map() 可能以相同的方式实现.