我正在寻找“添加”多个JavaScript对象(关联数组)的最佳方法。
例如,给定:
a = { "one" : 1, "two" : 2 }; b = { "three" : 3 }; c = { "four" : 4, "five" : 5 };
什么是最好的计算方式:
{ "one" : 1, "two" : 2, "three" : 3, "four" : 4, "five" : 5 }
引入ECMAscript 6是Object.assign()为了用Javascript本身实现此目的。
Object.assign()
所述 Object.assign() 方法被用于所有可枚举自己的属性的值从一个或多个源对象复制到目标对象。它将返回目标对象。
var o1 = { a: 1 }; var o2 = { b: 2 }; var o3 = { c: 3 }; var obj = Object.assign({}, o1, o2, o3); console.log(obj); // { a: 1, b: 2, c: 3 }
Object.assign在许多现代浏览器中都受支持,但并非所有浏览器都支持。使用Babel和Traceur等编译器生成向后兼容的ES5 JavaScript。
Object.assign