74 lines
2.4 KiB
Plaintext
74 lines
2.4 KiB
Plaintext
|
|
||
|
{{alias}}( obj, properties )
|
||
|
Defines (and/or modifies) object properties.
|
||
|
|
||
|
The second argument is an object whose own enumerable property values are
|
||
|
descriptors for the properties to be defined or modified.
|
||
|
|
||
|
Property descriptors come in two flavors: data descriptors and accessor
|
||
|
descriptors. A data descriptor is a property that has a value, which may or
|
||
|
may not be writable. An accessor descriptor is a property described by a
|
||
|
getter-setter function pair. A descriptor must be one of these two flavors
|
||
|
and cannot be both.
|
||
|
|
||
|
A property descriptor has the following optional properties:
|
||
|
|
||
|
- configurable: boolean indicating if property descriptor can be changed and
|
||
|
if the property can be deleted from the provided object. Default: false.
|
||
|
|
||
|
- enumerable: boolean indicating if the property shows up when enumerating
|
||
|
object properties. Default: false.
|
||
|
|
||
|
- writable: boolean indicating if the value associated with the property can
|
||
|
be changed with an assignment operator. Default: false.
|
||
|
|
||
|
- value: property value.
|
||
|
|
||
|
- get: function which serves as a getter for the property, or, if no getter,
|
||
|
undefined. When the property is accessed, a getter function is called
|
||
|
without arguments and with the `this` context set to the object through
|
||
|
which the property is accessed (which may not be the object on which the
|
||
|
property is defined due to inheritance). The return value will be used as
|
||
|
the property value. Default: undefined.
|
||
|
|
||
|
- set: function which serves as a setter for the property, or, if no setter,
|
||
|
undefined. When assigning a property value, a setter function is called with
|
||
|
one argument (the value being assigned to the property) and with the `this`
|
||
|
context set to the object through which the property is assigned. Default: undefined.
|
||
|
|
||
|
Parameters
|
||
|
----------
|
||
|
obj: Object
|
||
|
Object on which to define the properties.
|
||
|
|
||
|
properties: Object
|
||
|
Object with property descriptors.
|
||
|
|
||
|
Returns
|
||
|
-------
|
||
|
obj: Object
|
||
|
Object on which properties were defined (and/or modified).
|
||
|
|
||
|
Examples
|
||
|
--------
|
||
|
> var obj = {};
|
||
|
> {{alias}}( obj, {
|
||
|
... 'foo': {
|
||
|
... 'value': 'bar',
|
||
|
... 'writable': false,
|
||
|
... 'configurable': false,
|
||
|
... 'enumerable': true
|
||
|
... },
|
||
|
... 'baz': {
|
||
|
... 'value': 13
|
||
|
... }
|
||
|
... });
|
||
|
> obj.foo
|
||
|
'bar'
|
||
|
> obj.baz
|
||
|
13
|
||
|
|
||
|
See Also
|
||
|
--------
|
||
|
|