The Object.getOwnPropertyDescriptor() method in JavaScript is a standard built-in object that enables the full information on a property to be accessed and returns a property descriptor for the own property of a given object.
Syntax:
Object.getOwnPropertyDescriptor( obj, prop )
Parameters: This method accepts two parameters as mentioned above and described below:
- obj: This parameter holds the object in which the property is to be looked.
- prop: This parameter holds the name or Symbol of the property whose description is to be retrieved.
Return value: This method returns a property descriptor of the given property or undefined depending upon the existence of the object.
Below examples illustrate the Object.getOwnPropertyDescriptor() method in JavaScript:
Example 1: In this example, we will check if an object contains some property or not using the Object.getOwnPropertyDescriptor() method in JavaScript.
javascript
const neveropen1 = { prop1: "neveropen" } const neveropen2 = { prop2: "Best Platform" } const neveropen3 = { prop3: "And Computer science portal" } const descriptor1 = Object.getOwnPropertyDescriptor(neveropen1, 'prop1' ); const descriptor2 = Object.getOwnPropertyDescriptor(neveropen2, 'prop2' ); const descriptor3 = Object.getOwnPropertyDescriptor(neveropen3, 'prop3' ); console.log(descriptor1.enumerable); console.log(descriptor2.enumerable); console.log(descriptor1.value); console.log(descriptor2.value); console.log(descriptor3.enumerable); console.log(descriptor3.value); |
Output:
true true "neveropen" "Best Platform" true "And Computer science portal"
Example 2: In this example, we will check if an object contains some property or not using the Object.getOwnPropertyDescriptor() method in JavaScript.
javascript
let geek, result; geek = { get foo() { return 17; } }; d = Object.getOwnPropertyDescriptor(geek, 'foo' ); console.log(d) geek = { bar: 42 }; d = Object.getOwnPropertyDescriptor(geek, 'bar' ); console.log(d) geek = { [Symbol. for ( 'baz' )]: 73 } d = Object.getOwnPropertyDescriptor(geek, Symbol. for ( 'baz' )); console.log(d) geek = {}; Object.defineProperty(geek, 'qux' , { value: 8675309, writable: false , enumerable: false }); d = Object.getOwnPropertyDescriptor(geek, 'qux' ); console.log(d) |
Output:
Object { get: get foo() { return 17; }, set: undefined, enumerable: true, configurable: true } Object { value: 42, writable: true, enumerable: true, configurable: true } Object { value: 73, writable: true, enumerable: true, configurable: true } Object { value: 8675309, writable: false, enumerable: false, configurable: false }
We have a complete list of Javascript Object methods, to check those please go through this JavaScript Object Complete Reference article.
Supported Browsers: The browsers supported by Object.getOwnPropertyDescriptor() method are listed below:
- Google Chrome 5.0 and above
- Internet Explorer 9.0 and above
- Mozilla 4.0 and above
- Opera 12 and above
- Safari 5.0 and above