Objects in JavaScript can have a literal form (var a = {value: 3}
) or a constructed form (var a = new Array()
).
Objects are of 6 primitive types:
string
number
boolean
null
undefined
object
Objects are a collection of key/value pairs. The values can be accessed as properties with .propName
or ["propName"]
.
Properties have characteristics that can be controlled with property descriptors such as writable
.
var myObject = {
a: 2
};
Object.getOwnPropertyDescriptor( myObject, "a" );
// {
// value: 2,
// writable: true,
// enumerable: true,
// configurable: true
// }
Objects can have their mutability modified using Object.freeze(..)
or Object.seal(..)
.
Properties don't have to hold a value, they can be accessors properties with getters/setters.