javascript syntax sugar

  1. computed property name syntax: following is the same

    var a = “b”; var c = {[a]: “d”}
    var a = “b”; var c = {}; c[a] = “d”;

  2. arrow function: shortcut for return object is different

    p => { return { foo: ‘bar’ } } //normal
    p => ({ foo: ‘bar’ }); //shortcut for return object
    p => 10;
    p => ‘foo’;
    p => true;
    p => [1,2,3];
    p => null;
    p => /^foo$/;

  3. using !! to convert object to boolean