在合并JSON对象数组中的数组时,可以采用以下步骤:
下面是一个示例的JavaScript代码:
// 原始的JSON对象数组
const jsonArr = [
{
id: 1,
name: 'John',
hobbies: ['reading', 'music']
},
{
id: 2,
name: 'Alice',
hobbies: ['swimming', 'photography']
},
{
id: 3,
name: 'Bob',
hobbies: ['reading', 'gaming']
}
];
// 合并数组
const mergedArray = [];
jsonArr.forEach(obj => {
mergedArray.push(...obj.hobbies);
});
// 数组去重
const uniqueArray = Array.from(new Set(mergedArray));
// 添加合并后的数组到原始JSON对象数组
jsonArr.forEach(obj => {
obj.mergedHobbies = uniqueArray;
});
console.log(jsonArr);
这段代码首先遍历原始的JSON对象数组,获取所有需要合并的数组,然后将它们组成一个新的数组并去重,最后将去重后的数组添加到原始的JSON对象数组中。输出结果如下:
[
{
id: 1,
name: 'John',
hobbies: ['reading', 'music'],
mergedHobbies: ['reading', 'music', 'swimming', 'photography', 'gaming']
},
{
id: 2,
name: 'Alice',
hobbies: ['swimming', 'photography'],
mergedHobbies: ['reading', 'music', 'swimming', 'photography', 'gaming']
},
{
id: 3,
name: 'Bob',
hobbies: ['reading', 'gaming'],
mergedHobbies: ['reading', 'music', 'swimming', 'photography', 'gaming']
}
]
这样,原始的JSON对象数组中的每个对象都新增了一个mergedHobbies
属性,它包含了所有合并后的、去重后的数组元素。
腾讯云湖存储专题直播
腾讯云存储专题直播
开箱吧腾讯云
企业创新在线学堂
T-Day
云+社区技术沙龙第33期
Techo Day
Elastic 中国开发者大会
DBTalk
云+社区技术沙龙[第14期]
云+社区技术沙龙[第22期]
领取专属 10元无门槛券
手把手带您无忧上云