Updated at: 30 Nov 2019 12:38:23

Content was largely take from “You don’t know JS”.


Scope and Closure

Organization of variables into units of scope is one of the most foundational characteristics of any language.

The scope unit boundaries is determined at the time the program is parsed. Author time descision. Variables at that level of scope nesting are accessible, variables outside are not.


Prototypal inheritance was initially used to implement the class design pattern.

However, after class came in ES6, language doubled down on its inclination to OO.

But behaviour delegation is still important for organising behaviour and data in the program.

Types and Coercision

Not just solved with type aware tooling.