currently at http://javascript.info/object-methods
semicolons only after statements
function expressions are statements
anonymous functions are good if you don’t want it to be accessed outside of its scope.
function declarations are hoisted

objects.assign is not deep clone
objects are references to memory addresses
symbol property in object – symbols with the same name are still different
Symbol.for for global symbol
let id = Symbol.for("id");