1

我有一个看起来像这样的二元素数组

headers = [{x: 1, y: 2},{x: 2, y: 3}]

我还有另一个三元素数组,如下所示:

ans = [{r: true},{r: false},{r:true}]

如何将第二个数组添加到第一个数组的第一行以给出:

[{x: 1, y: 2, ans: [{r: true},{r: false},{r:true}] },{x: 2, y: 3}]

请注意,我不想预先定义 ans,因为它可能是一个数组或其他东西。也很抱歉,但我认为我对数组的表示可能不是完全正确的语法。希望这是有道理的。

4

4 回答 4

7

您实际上想向数组中的元素添加另一个属性。你可以这样做

 headers[0].ans = ans;
于 2013-11-14T12:28:50.947 回答
2

只需将您的属性分配给您的对象:headers[0].ans = ans

于 2013-11-14T12:29:30.060 回答
2

你可以做这样的事情......

var headers = [{x: 1, y: 2},{x: 2, y: 3}];
var ans = [{r: true},{r: false},{r:true}];

// define what you want the newly added property to be called
var collectionName = "ans";

// assign it only to the first item in the headers array
headers[0][collectionName] = ans;

// here are your results
console.log(JSON.stringify(headers));

这是一个工作小提琴,它将输出数组供您在输出 div 中查看

http://jsfiddle.net/9KR2P/

于 2013-11-14T12:33:08.753 回答
0
var headers = [{x: 1, y: 2},{x: 2, y: 3}],
    ans = [{r: true},{r: false},{r:true}];

headers[0].ans = ans;
于 2013-11-14T12:29:21.693 回答