- Objects in Javascript are essentially hashes.
- There are special types of objects such as strings, integers, and functions, but a 'plain Javascript object' is just a hash consisting of key-value pairs.
- Keys must be strings. Values can be any object, including functions.
- Every object has a 'prototype' that it inherits from.
- Prototypes are simply objects containing various properties.
- When you call a property of an object, Javascript first looks inside the object to retrieve that property. If it doesn't find it, it looks inside the object's prototype.
- You can only set an object's prototype once; it can never be overwritten.