javascript中如何用两个数组组成一个对象?

How to use two arrays to form an object in javascript?

我有两个对象数组:

array1 = [Object, Object, Object]
array2 = [Object, Object, Object]

array1 中的每个对象是:

{property1 : "somevalue"}

在数组 2 中:

{property1 : Object, property2 : "somevalue"}

其中对象有自己的一组属性。因此两个数组的结构是不同的。

我需要附加这两个数组以形成一个类似于 json 格式的数组。 最终的结构应该是这样的:

{

"root1" : array1, "root2" : array2

}

请帮忙。 我想要的最终 json 看起来像这样:

{ 
  "root1" : [
  {property1 : "somevalue"},
  {property1 : "somevalue"},
  {property1 : "somevalue"}
             ],

  "root2" : [
  {property1 : Object, property2 : "somevalue"},
  {property1 : Object, property2 : "somevalue"},
  {property1 : Object, property2 : "somevalue"}
             ]
}

如何在运行时创建这个对象?

你必须这样做:

var arr1 = [{prop: "Value 1"}, {prop: "Value 2"}, {prop: "Value 3"}];

var arr2 = [{prop: "Value A", prop1: "Value Z"}, {prop: "Value B", prop1: "Value Y"}, {prop: "Value C", prop1: "Value X"}];

//as object
var result = { root1: arr1, root2: arr2 };

// as array
var mergedArrays = [].concat(arr1, arr2);
document.write(JSON.stringify(result));
console.log("Result", result)

这是带有数组的新对象:

var myArrays{

"root1" : array1,
"root2" : array2

}

让我们将其转换为 JSON 字符串

var myJson = JSON.stringify(myArrays);

您可以在 Array 上使用 push() 方法,如下所示

var mergedArrays = [];
mergedArrays.push(array1);
mergedArrays.push(array2);
JSON.stringify(mergedArrays);