要返回对象数组中重复值的和,可以按照以下步骤进行操作:
以下是一个示例代码,演示如何实现该功能:
const array = [
{ name: 'Alice', value: 10 },
{ name: 'Bob', value: 20 },
{ name: 'Alice', value: 30 },
{ name: 'Charlie', value: 40 }
];
const duplicates = {};
let sumOfDuplicates = 0;
for (const obj of array) {
const { name } = obj;
duplicates[name] = duplicates[name] ? duplicates[name] + 1 : 1;
}
for (const key in duplicates) {
if (duplicates[key] > 1) {
sumOfDuplicates += parseInt(key); // 假设键的值是可相加的
}
}
console.log('重复值的和:', sumOfDuplicates);
要返回对象数组中非重复值的值,可以按照以下步骤进行操作:
以下是一个示例代码,演示如何实现该功能:
const array = [
{ name: 'Alice', value: 10 },
{ name: 'Bob', value: 20 },
{ name: 'Alice', value: 30 },
{ name: 'Charlie', value: 40 }
];
const duplicates = {};
const uniqueValues = [];
for (const obj of array) {
const { name } = obj;
duplicates[name] = duplicates[name] ? duplicates[name] + 1 : 1;
}
for (const obj of array) {
const { name } = obj;
if (duplicates[name] === 1) {
uniqueValues.push(obj.value);
}
}
console.log('非重复值:', uniqueValues);
请注意,以上代码只是一种实现方式,具体根据实际需求和编程语言的特性进行相应调整。
领取专属 10元无门槛券
手把手带您无忧上云