12. Objects Cheat Sheet

Dot operator (.):

obj.propKey;
obj.propKey = value;
delete obj.propKey;

Bracket operator ([]):

obj["propKey"];
obj["propKey"] = value;
delete obj["propKey"];

Getting and setting the prototype:

Object.create(proto, maybePropDescObj);
Object.getPrototypeOf(obj);

Iteration and detection of properties:

Object.keys(obj);
Object.getOwnPropertyNames(obj);
Object.prototype.hasOwnProperty.call(obj, propKey);
propKey in obj;

Getting and defining properties via descriptors:

Object.defineProperty(obj, propKey, propDesc);
Object.defineProperties(obj, propDescObj);
Object.getOwnPropertyDescriptor(obj, propKey);
Object.create(proto, maybePropDescObj);

Protecting objects:

Object.preventExtensions(obj);
Object.isExtensible(obj);
Object.seal(obj);
Object.isSealed(obj);
Object.freeze(obj);
Object.isFrozen(obj);

Methods of all objects:

Object.prototype.toString(); //  по умолчанию возвращает `[object Object]`
Object.prototype.valueOf(); // возвращает примитивное значение, которое может быть представлено вместо данного объекта.
Object.prototype.toLocaleString(); // по умолчанию вызывает `toString()`
Object.prototype.isPrototypeOf(obj);
Object.prototype.hasOwnProperty(key);
Object.prototype.propertyIsEnumerable(propKey);

Last updated