Object.defineProperties()
The Object.defineProperties() method defines new or
modifies existing properties directly on an object, returning the object.
Syntax
Object.defineProperties(obj, props)
Parameters
obj- : The object on which to define or modify properties.
props: An object whose keys represent the names of properties to be defined or modified and whose values are objects describing those properties. Each value in
propsmust be either a data descriptor or an accessor descriptor; it cannot be both (seeObject.defineProperty()for more details).Data descriptors and accessor descriptors may optionally contain the following keys:
configurable- :
trueif and only if the type of this property descriptor may be changed and if the property may be deleted from the corresponding object. Defaults tofalse.
- :
enumerable- :
trueif and only if this property shows up during enumeration of the properties on the corresponding object. Defaults tofalse.
- :
A data descriptor also has the following optional keys:
value- : The value associated with the property. Can be any valid JavaScript value
(number, object, function, etc.).
Defaults to
undefined.
- : The value associated with the property. Can be any valid JavaScript value
(number, object, function, etc.).
Defaults to
writable- :
trueif and only if the value associated with the property may be changed with an assignment operator. Defaults tofalse.
- :
An accessor descriptor also has the following optional keys:
getset
If a descriptor has neither of
value,writable,getandsetkeys, it is treated as a data descriptor. If a descriptor has bothvalueorwritableandgetorsetkeys, an exception is thrown.
Return value
The object that was passed to the function.