如何在不覆盖JavaScript的情况下将属性从一个对象添加到另一个对象?

假设以下是我们的对象-

var first = {key1: 100, key2: 40, key3: 70}
var second = {key2: 80, key3: 70, key4: 1000}

您可以使用将hasOwnProperty()一个对象的属性添加到另一个对象的概念。以下是代码-

示例

var first = {key1: 100, key2: 40, key3: 70}
var second = {key2: 80, key3: 70, key4: 1000}
function addPropertiesWithoutOverwritting(first, second) {
   for (var key2 in second) {
      if (second.hasOwnProperty(key2) && !first.hasOwnProperty(key2)) {
         first[key2] = second[key2];
      }
   }
   return first;
}
console.log(addPropertiesWithoutOverwritting(first, second))

要运行以上程序,您需要使用以下命令-

node fileName.js.

输出结果

在这里,我的文件名为demo99.js。这将产生以下输出-

PS C:\Users\Amit\JavaScript-code> node demo99.js
{ key1: 100, key2: 40, key3: 70, key4: 1000 }