Name
Object.defineProperties() — create or configure multiple object properties
Availability
ECMAScript 5
Synopsis
Object
.
defineProperties
(
o
,
descriptors
)
Arguments
o
The object on which properties are to be created or configured.
descriptors
An object that maps property names to property descriptors.
Returns
The object o
.
Throws
- TypeError
If
o
is not an object, or if any of the specified properties cannot be created or configured. This function is not atomic: it may create or configure certain properties and then throw an error, before even attempting to create or configure other properties. See Property Attributes for a list of property configuration errors that can cause a TypeError.
Description
Object.defineProperties()
creates or configures on the object o
the
properties named and described by
descriptors
. The names of the properties
in descriptors
are the names of the
properties to be created or configured on
o
, and the values of those properties are
the property descriptor objects that specify the attributes of the
properties to be created or configured.
Object.defineProperties()
works much like Object.defineProperty() does;
see that function for more details. See Object.getOwnPropertyDescriptor() for more on
property descriptor objects.
Example
// Add read-only properties x and y to a newly-created object
var
p
=
Object
.
defineProperties
({},
{
x
:
{
value
:
0
,
writable
:
false
,
enumerable
:
true
,
configurable
:
true
},
y
:
{
value
:
1
,
writable
:
false
,
enumerable
:
true
,
configurable
:
true
},
});
See Also ...
Get JavaScript: The Definitive Guide, 6th Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.