要将两个对象合并成一个,并且对于相同属性的值进行累加,可以使用以下示例代码:
function mergeObjects(obj1, obj2) {
const result = {};
// 将obj1的属性复制到result中
for (const key in obj1) {
if (obj1.hasOwnProperty(key)) {
result[key] = obj1[key];
}
}
// 将obj2的属性合并到result中,并对相同属性的值进行累加
for (const key in obj2) {
if (obj2.hasOwnProperty(key)) {
if (result.hasOwnProperty(key)) {
result[key] += obj2[key];
} else {
result[key] = obj2[key];
}
}
}
return result;
}
// 测试代码
const obj1 = { a: 1, b: 2, c: 3 };
const obj2 = { b: 3, c: 4, d: 5 };
const mergedObj = mergeObjects(obj1, obj2);
console.log(mergedObj); // 输出:{ a: 1, b: 5, c: 7, d: 5 }
上述代码中, mergeObjects 函数接收两个对象作为参数,并返回合并后的新对象。函数首先将第一个对象的属性复制到结果对象中,然后遍历第二个对象的属性,将其合并到结果对象中。如果结果对象中已经存在相同的属性,则将其值进行累加。最后返回合并后的结果对象。
请注意,上述代码仅是一个示例,具体的实现方式可能会根据你的需求和具体场景的不同而有所变化。