首页 > 解决方案 > 合并两个json文件并保持相同的结构javascript

问题描述

我在尝试创建包含来自我抓取的网站的信息的 JSON 时遇到了一些问题。我创建了两个文件,并且都具有相同的结构。我想将它们放在一个 JSON 中,并为两者保持相同的结构。我怎样才能做到这一点?

我的文件如下所示:

[
 {
   name: 'Jed',
   age: 23
   home: [
          {address: 5th AV 123
           coordinates: [{lat:12324,
                          long:1231
            }
          ]
        }
  ]

我有 10 个结构相同但每个文件的信息不同的文件。如何创建一个包含所有 10 个的主要 JSON?

标签: javascriptarraysjson

解决方案


您可以使用该函数Array.prototype.concat将对象附加到特定数组。同样,使用Spread 语法将元素作为参数传递。

let array = anArray.concat(...anotherArray);

或传递多个数组如下

let anArray = [{    name: 'Jed',    age: 23,    home: [{        address: "5th AV 123",        coordinates: [{            lat: 12324,            long: 1231        }]    }]}, {    name: 'Ele',    age: 36, home: [{        address: "5th AV 123",        coordinates: [{            lat: 12324,            long: 1231        }]    }]}],
    anotherArray = [{    name: 'Rick',    age: 21,    home: [{        address: "5th AV 123",        coordinates: [{            lat: 12324,            long: 1231        }]    }]}, {    name: 'Jade',    age: 42, home: [{        address: "5th AV 123",        coordinates: [{            lat: 12324,            long: 1231        }]    }]}],
    furtherArray = [{    name: 'Enr',    age: 21,    home: [{        address: "5th AV 123",        coordinates: [{            lat: 12324,            long: 1231        }]    }]}, {    name: 'John',    age: 42, home: [{        address: "5th AV 123",        coordinates: [{            lat: 12324,            long: 1231        }]    }]}];

console.log(Array.prototype.concat.call(anArray, ...anotherArray, ...furtherArray));
.as-console-wrapper { max-height: 100% !important; top: 0; }


推荐阅读