Apart from the seven primitive types, every JavaScript value is an object: arrays, functions, dates and DOM elements included. A plain object maps keys (strings or symbols) to values, and an object literal { ... } creates one. Classes, which build on the same machinery, follow in Classes.