object.assgin method
by james gotsell
HTML
<script src=" https://getfirebug.com/firebug-lite-debug.js"></script>
JavaScript
// cloning objects
var obj = { a: 1 , A: "boomting" };
var copy = Object.assign({}, obj);
console.log(copy); // { a: 1 }
// merging objects
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 }
console.log(o1); // { a: 1, b: 2, c: 3 }, target object itself is changed. because its merge o2 and o3 into o1 as well
// copying symbol typed objects
var o4 = { a: 2 };
var o5 = { [Symbol('foo')]: 3 };
console.log(o5)
var obj1 = Object.assign({}, o4, o5);
console.log(obj1); // { a: 1, [Symbol("foo")]: 2 }