define-properties-x
Define multiple non-enumerable properties at once.
Requires ES3 or above.
See: define-properties
Version: 1.2.1
Author: Xotic750 Xotic750@gmail.com
License: MIT
Copyright: Xotic750
define-properties-x~supportsDescriptors
: boolean
Boolean indicator as to whether the environments supports descriptors
or not.
Kind: inner property of define-properties-x
Example
var define = require('define-properties-x');
define.supportsDescriptors;
define-properties-x~properties(object, map, [predicates])
Define multiple non-enumerable properties at once.
Uses Object.defineProperty
when available; falls back to standard
assignment in older engines. Existing properties are not overridden.
Accepts a map of property names to a predicate that, when true,
force-overrides.
Kind: inner method of define-properties-x
Param | Type | Description |
---|
object | Object | The object on which to define the property. |
map | Object | The object of properties. |
[predicates] | Object | The object of property predicates. |
Example
var define = require('define-properties-x');
define.properties({
a: 1,
b: 2
}, {
a: function () { return false; },
b: function () { return true; }
});
define-properties-x~property(object, prop, value, [force])
Just like properties
but for defining a single non-enumerable
property. Useful in environments that do not
support Computed property names
. This can be done
with properties
, but this method can read a little cleaner.
Kind: inner method of define-properties-x
Param | Type | Default | Description |
---|
object | Object | | The object on which to define the property. |
prop | string | Symbol | | The property name. |
value | * | | The value of the property. |
[force] | boolean | false | If true then set property regardless. |
Example
var define = require('define-properties-x');
var myString = 'something';
define.property(obj, Symbol.iterator, function () {}, true);
define.property(obj, myString, function () {}, true);