使用underscore.js可以减少返回数组的次数



我正试图使用reduce返回一个数组,如下所示:

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

我希望它能产生一个像myArray一样的数组。对于第一个项目,seed是一个数组。对于第二个项目,seed是一个数字。这会导致一个错误,第三个项目永远无法到达。

这里发生了什么事?

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

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

最新更新