优化Javascript对象合并功能

时间:2013-09-17 18:54:38

标签: javascript

我正在寻找优化以下代码块,代码和速度更少的代码。 它只是将2个JavaScript对象合并为1.尽管它工作正常,但我确信这可能更清晰。任何帮助都会很棒。

此外,它必须在本机JavaScript中完成,而不使用诸如JQuery等的库。

干杯

function mergeObject(obj1, obj2) {
    var output = {};
    if (!obj2) {
        return obj1;
    }
    for (var prop in obj1) {
        if (prop in obj2) {
            output[prop] = obj2[prop];
        } else {
            output[prop] = obj1[prop];
        }
    }
    return output;
}

1 个答案:

答案 0 :(得分:0)

您可以执行此操作,但请注意a中的属性如果也在b中,也会被覆盖。

function(a, b) {
  if (a && b) {
    for (var key in b) {
      if (b.hasOwnProperty(key)) {
        a[key] = b[key];
      }
    }
  }
  return a;
}