JavaScript扩展数组

时间:2012-05-21 15:59:30

标签: javascript jquery arrays underscore.js

我有一个对象数组。在循环过程中,我为每个条目添加了不同的属性。

我的问题 - 如何确保每个条目都包含每个条目的所有属性?

让我们考虑一下:

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}]

1 个答案:

答案 0 :(得分:6)

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

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

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