ES6 addition to objects

ES6 has a few interesting object definition and property syntax. This new syntax is to make working with objects easier and concise.

ES6 provides a shorter syntax for common object definition.

ES5: obj = { x: x, y: y };

ES6: obj = {x,y};

It is possible to compute property names in the new ES6 object definition syntax:

    let obj = { 
      foo: "bar", 
      [ "baz" + q() ]: 42 
    } 

Here the property name is computed where "baz" is concatenated with the result of the function call.

The Object.assign() method is used to copy the values of all enumerable own properties from one or more source objects to a target object:

    var dest  = { quux: 0 } 
    var src1 = { foo: 1, bar: 2 } 
    var src2 = { foo: 3, baz: 4 } 
    Object.assign(dst, src1, src2)