JS: Object.defineProperties

By Xah Lee. Date: . Last updated: .

Object.defineProperties(obj, {key1: descriptor1}, {key2: descriptor2},…)

Create properties or modify existing properties.

Return the modified obj.

The descriptor1, descriptor2, etc are property descriptors.

[see JS: Property Descriptor]

[see JS: Property Attributes, writable, enumerable, configurable]

// create a object
const yy = {};

// add 2 properties, with their attributes
Object.defineProperties(
    yy,
    {
        x1:{ value : 1, writable: true, enumerable: true, configurable: true},
        x2:{ value : 2, writable: true, enumerable: true, configurable: true}
    }
);

console.log(yy);                // { x1: 1, x2: 2 }

To create/modify only 1 property, use Object.defineProperty

[see JS: Object.defineProperty]

Create/Add Getter/Setter Properties

Object.defineProperties(obj, {pkey1, { get: function, enumerable: false, configurable: true }}, {pkey2, …},…)

[see JS: Getter/Setter Properties]

JS Object Property

  1. Property Overview
  2. Property Key
  3. Dot vs Bracket Notation
  4. Create/Delete Property
  5. Get/Set Property
  6. Property Existence
  7. Access Property
  8. List Properties
  9. Property Attributes
  10. Getter/Setter
  11. Property Descriptor
  12. Symbol

JS Object and Inheritance

  1. Object Overview
  2. Object Type
  3. Find Object's Type
  4. Prototype Chain
  5. Create Object
  6. Object Literal Expr
  7. Create Object with Parent X
  8. Get/Set Parent
  9. Show Prototype Chain
  10. Prevent Adding Property
  11. Clone Object
  12. Test Object Equality
  13. Add Method to Prototype

Like it? Help me by telling your friends. Or, Put $5 at patreon.

Or, Buy JavaScript in Depth

If you have a question, put $5 at patreon and message me.

Web Dev Tutorials

  1. HTML
  2. CSS
  3. JavaScript
  4. JS Obj Ref
  5. DOM
  6. SVG
  7. Blog