define-properties-x

4.1.2 • Public • Published

Travis status Dependency status devDependency status npm version jsDelivr hits bettercodehub score Coverage Status

define-properties-x

Define multiple non-enumerable properties at once.

See: define-properties

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: static 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

import * as define from '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: static 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

import * as define from 'define-properties-x';
 
const myString = 'something';
define.property(obj, Symbol.iterator, function() {}, true);
define.property(obj, myString, function() {}, true);

Package Sidebar

Install

npm i define-properties-x

Weekly Downloads

7

Version

4.1.2

License

MIT

Unpacked Size

480 kB

Total Files

11

Last publish

Collaborators

  • xotic750