JavaScript扩展数组

我有一个对象数组。 在循环期间,我将不同的属性附加到每个条目。

我的问题 – 如何确保每个条目都具有每个条目的所有属性?

让我们考虑一下:

var myArray = [{A: 1}, {B: 2}, {C: 3}]; 

现在我想运行一些优雅的单行将这个数组转换成:

 [{A: 1, B:2, C: 3}, {A: 1, B:2, C: 3}, {A: 1, B:2, C: 3}] 

没有图书馆,优雅的单行有点困难。 但是如果你有某种extendfunction,那么它可能是:

 myArray.map(function(v) { return extend.apply(null, [{}].concat(myArray)); }); 

extend函数需要组合多个对象(作为单独的参数传递)。 这样的函数在jQuery中可用作jQuery.extend ,而underscore.js也有一个。