首页 > 解决方案 > 将 2 个数组中的数据作为对象合并到一个新数组中——Javascript

问题描述

我有两个数组,一个包含一个国家的所有州,另一个包含每个州的所有地区。

array1 的所有状态及其数据如下:

stateArray = [ {state1data1: info, state1data2: info}, {state2data1: info, state2data2: info} ]

array2 具有每个州的所有地区及其数据如下:

districtArray = [ {state1district1: {districtData}, state1district2: {districtData} }, {state2district1: {districtData}, state2district2: {districtData} } ]

两个数组中的数据都可以使用其索引值来识别。就像 stateArray 在索引 0 中有一个州一样,那么 districtArray 在索引 0 中包含该特定州的所有地区。

现在我正在尝试创建一个新数组,它将从 stateArray 中获取州,并从 DistrictArray 中获取该特定州的地区数据,并将其添加为 statedata。像这样的东西:

array3 = [ {state1data1: info, state1data2: info, state1districtdata: {state1district1: {districtData}, state1district2: {districtData} } }]

我对如何实现这一点一无所知。如果有人能指出我正确的方向,我将不胜感激。

标签: javascriptarrayssortingmultidimensional-array

解决方案


let array3 = [];
for(let i = 0; i < districtArrray.length; i++) {
    let obj = {... stateArray[i]};
    obj[i].state1districtdata = districtArray[i];
    array3.push(obj);
}

推荐阅读