JavaScript objectsObject type constructorsObject literal notationFunction objectsFunctions as object constructors (classes)Functions as static objectsObject literal notation versus function objectsThe "this" keywordClosuresEncapsulation and scopingInheritancePrototype chainingProperty look up in prototype chainingResetting the constructor propertyConstructor stealingParasitic combination inheritanceConstructor propertyNative support for inheritance