Javascript 在数组循环中的对象中添加元素
我是JavaScript新手,我正在尝试从两个数组中组合两个对象 第一阵列 常数测试阵列=[{ id:3, 参数1:'x', 参数2:'y', 参数3:'z' }, { id:1, 参数1:'u', 参数2:'v', 参数3:‘w’ }, { id:5, 参数1:'q', 参数2:‘w’, 参数3:'e' }] 第二阵列 var json=[{ 名称:“aaa” }, { 名称:“ccc” }, { 名称:“bbb” }]; 预期产量Javascript 在数组循环中的对象中添加元素,javascript,arrays,javascript-objects,Javascript,Arrays,Javascript Objects,我是JavaScript新手,我正在尝试从两个数组中组合两个对象 第一阵列 常数测试阵列=[{ id:3, 参数1:'x', 参数2:'y', 参数3:'z' }, { id:1, 参数1:'u', 参数2:'v', 参数3:‘w’ }, { id:5, 参数1:'q', 参数2:‘w’, 参数3:'e' }] 第二阵列 var json=[{ 名称:“aaa” }, { 名称:“ccc” }, { 名称:“bbb” }]; 预期产量 [{ additional: "aaa&quo
[{
additional: "aaa",
id: 3,
parameter1: "x",
parameter2: "y",
parameter3: "z"
}, {
additional: "ccc",
id: 1,
parameter1: "u",
parameter2: "v",
parameter3: "w"
}, {
additional: "bbb",
id: 5,
parameter1: "q",
parameter2: "w",
parameter3: "e"
}]
下面我在JSFiddle中尝试的代码我尝试循环var并将元素添加到TESTARRAY,但我得到了相同的值bbb任何人都可以指导我找到更好的方法吗
常数测试阵列=[{
id:3,
参数1:'x',
参数2:'y',
参数3:'z'
}, {
id:1,
参数1:'u',
参数2:'v',
参数3:‘w’
}, {
id:5,
参数1:'q',
参数2:‘w’,
参数3:'e'
}]
var json=[{
名称:“aaa”
}, {
名称:“ccc”
}, {
名称:“bbb”
}];
对于json中的var键{
如果json.hasOwnPropertykey{
TESTARRAY.mapi=>i.additional=json[key].name
}
}
console.logTESTARRAY假设要组合的两个数组大小相同。 你可以简单地做这样的事情
for (let i = 0; i < TESTARRAY.length; ++i)
{
TESTARRAY[i] = {...json[i], ...TESTARRAY[i]};
}
map第二个参数是当前项的索引,您可以使用它引用json变量
常数测试阵列=[{
id:3,
参数1:x,
参数2:y,
参数3:z
},
{
id:1,
参数1:u,
参数2:v,
参数3:w
},
{
id:5,
参数1:q,
参数2:w,
参数3:e
}
];
var json=[{
姓名:aaa
},
{
姓名:ccc
},
{
姓名:bbb
}
];
常量newTestArray=TESTARRAY.mapcurr,索引=>{
附加:json[index].name,
…咖喱
};
console.lognewTestArray 您可以在同一索引处映射具有第二个数组的合并属性的新数组 常数 array1=[{name:'aaa'},{name:'ccc'},{name:'bbb'}], array2=[{id:3,参数1:'x',参数2:'y',参数3:'z'},{id:1,参数1:'u',参数2:'v',参数3:'w'},{id:5,参数1:'q',参数2:'w',参数3:'e'}], merged=array1.map{name:additional},i=>{additional,…array2[i]}; console.logmerged;
.作为控制台包装{最大高度:100%!重要;顶部:0;}您。您有普通对象和普通数组。JSON是一种类似于XML的文本序列化格式。它将始终表示为一个字符串。只需循环并更新json.entries的const[k,v]的数组的相同索引{TESTARRAY[k]['additional']=v.name;}它可以工作非常感谢您的时间和帮助它可以工作也非常感谢您的帮助。