Object.assign() method is used to copy the values of all enumerable
own properties from one or more source objects to a target object.
The Object.create() method creates a new object with the specified prototype object and properties.
The Object.defineProperties() method defines new or modifies existing properties directly on an object, returning the object.
The Object.defineProperty() method defines a new property directly on an object, or modifies an existing property on an object, and returns the object.
The Object.freeze() method freezes an object: that is, prevents new properties from being added to it; prevents existing properties from being removed; and prevents existing properties, or their enumerability, configurability, or writability, from being changed.
The Object.getOwnPropertyDescriptor() method returns a property descriptor for an own property (that is, one directly present on an object, not present by dint of being along an object's prototype chain) of a given object.
Object.getOwnPropertyNames returns an array whose elements are strings corresponding to the enumerable and non-enumerable properties found directly upon obj.
The Object.getPrototypeOf() method returns the prototype (i.e.
Tests whether this object has the specified property as a direct property.
Tests whether the object has a property on itself or in its prototype chain.
Determines if extending of an object is allowed
The Object.isFrozen() determines if an object is frozen.
Tests whether this object is in the prototype chain of another object.
Returns true if the object is sealed, otherwise false.
The Object.keys() method returns an array of a given object's own enumerable properties, in the same order as that provided by a for...in loop (the difference being that a for-in loop enumerates properties in the prototype chain as well).
The Object.preventExtensions() method prevents new properties from ever being added to an object (i.e.
Returns the names of all the enumerable properties of this object, including properties in its prototype chain.
Tests whether the specified property in an object can be enumerated by a call to js.Object.properties, with the exception of properties inherited through the prototype chain.
The Object.seal() method seals an object, preventing new properties from being added to it and marking all existing properties as non-configurable.