JS: Reflect.getOwnPropertyDescriptor

By Xah Lee. Date: . Last updated: .

New in ES2015.

Reflect.getOwnPropertyDescriptor ( obj, key )

Return the property attributes. If the property doesn't exist, returns undefined.

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

The return value is a Property Descriptor.

[see JS: Property Descriptor]

If obj is not object, throw a TypeError exception.

const hh = {p:4};

console.log (
 Reflect.getOwnPropertyDescriptor ( hh , "p" )
);
// { value: 4, writable: true, enumerable: true, configurable: true }

// non-exist key
console.log (
 Reflect.getOwnPropertyDescriptor ( hh , "yyy" ) === undefined
);
// true

Object.getOwnPropertyDescriptor vs Reflect.getOwnPropertyDescriptor?

What's the difference?

Object.getOwnPropertyDescriptor ( obj, key ) will first convert obj to object.

[see JS: Object.getOwnPropertyDescriptor]

Reference

ECMAScript® 2016 Language Specification#sec-reflect.getownpropertydescriptor

back to JS: Reflect

JS Object Property

  1. Property Overview
  2. Property Key
  3. Dot vs Bracket Notation
  4. Create/Delete Property
  5. Get/Set Property
  6. Check Property Existence
  7. Access Property
  8. List Properties
  9. Property Attributes
  10. Getter/Setter
  11. Property Descriptor
  12. Symbol
Liket it? 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. Visual CSS
  3. JS in Depth
  4. JS Reference
  5. DOM
  6. SVG
  7. Web Dev Blog