使用underscore.js可以减少返回一个数组?

时间:2012-01-22 05:52:33

标签: javascript mapreduce underscore.js

我正在尝试使用reduce来返回这样的数组:

var myArray = [1,2,3];
_.reduce(myArray, function (seed, item) { return seed.push(item);}, []);

我希望它会像myArray一样产生一个数组。而对于第一个项目,种子是一个数组。然后对于第二个项目,种子是一个数字。这会导致错误,并且永远不会达到第三项。

这里发生了什么?

1 个答案:

答案 0 :(得分:14)

实际上,seed.push()不会返回修改后的seed。执行以下操作,这是正确的:

_.reduce(myArray, function (seed, item) { seed.push(item); return seed; }, []);