我们必须编写一个函数,该函数接受两个对象,将它们合并为一个对象,并添加相同键的值。这必须在线性时间和恒定空间中完成,这意味着最多仅使用一个循环并合并现有对象中的属性,而不创建任何新变量。
因此,让我们编写此函数的代码-
const obj1 = { value1: 45, value2: 33, value3: 41, value4: 4, value5: 65, value6: 5, value7: 15, }; const obj2 = { value1: 34, value3: 71, value5: 17, value7: 1, value9: 9, value11: 11, }; const mergeObjects = (obj1, obj2) => { for(key in obj1){ if(obj2[key]){ obj1[key] += obj2[key]; }; }; return; }; mergeObjects(obj1, obj2); console.log(obj1);
输出结果
控制台中的输出将为-
{ value1: 79, value2: 33, value3: 112, value4: 4, value5: 82, value6: 5, value7: 16 }