Object is an overloaded word in JS. Here's a few of the meanings:
- Anything that is not a primitive: "objects are stored by reference"
- The native data structure with curley braces and key-value pairs: { key: value }
- Object with a capital "o". THE object built into JS, it is the top parent in any inheritance chain.
- "Object Oriented Programming". A popular programming paradigm, source of much confusion to JS programmers:
- Classical OOP: The way most programming languages do OOP. Objects inherit their methods from Classes, and cannot (typically) be modified dynamically.
- Prototypical OOP: The way JS does OOP. Objects are their own stand-alone entities, they inherit from other objects, and can be modified on the fly.