This is the note taken when reading ECMA-262 edition 6.

Section 4

ECMAScript is an object-oriented programming language for performing computations and manipulating computational objects within a host environment.

ECMAScript is object-based: basic language and host facilities are provided by objects, and an ECMAScript program is a cluster of communicating objects.

An ordinary object is object that has the default behaviour for the essential internal methods that must be supported by all objects. An exotic object is object that does not have the default behaviour for one or more of the essential internal methods that must be supported by all objects. Any object that is not an ordinary object is an exotic object.