JavaScript Reflect defineProperty() Method
JavaScript Reflect.defineProperty() method in JavaScript is used to allow the precise addition to or modification of a property on an object. This method returns a Boolean value which indicates whether the property was successfully defined.
Syntax:
Reflect.defineProperty(target, propertyKey, attributes)
Parameter: This method accepts three parameters as mentioned above and described below:
- target: This parameter defines the property and the target object.
- propertyKey: This parameter is the name of the property which is to be defined or modified.
- Attributes: This parameter is the attributes for the property which is being defined or modified.
Return value: This method returns a Boolean value which indicates whether the property was successfully defined.
Exceptions: A TypeError is an exception given as the result when the target is not an Object.
Below examples illustrate the Reflect.defineProperty() method in JavaScript:
Example 1: The below example shows the basic use of the Reflect.defineProperty() method in JavaScript.
javascript
const object1 = {};
if (Reflect.defineProperty(object1, 'geeks1' , { value: 42 })) {
console.log( 'geeks1 assigned' );
} else {
console.log( 'problem created by geeks1' );
}
console.log(object1.geeks1);
const object2 = {};
const object3 = {};
(Reflect.defineProperty(object2, 'geeks2' , { value: 97 }))
if (Reflect.defineProperty(object3, 'geeks3' , { value: 23 })) {
console.log( 'geeks3 assigned' );
} else {
console.log( 'problem created by geeks3' );
}
console.log(object3.geeks3);
console.log(object2.geeks2);
|
Output
geeks1 assigned
42
geeks3 assigned
23
97
Example 2: The below example shows the basic use of the Reflect.defineProperty() method in JavaScript.
javascript
const a = {};
const result = Reflect.defineProperty(a, "geek1" ,
{ value: 19, });
console.log(a);
console.log(result);
const b = {};
const result1 = Reflect.defineProperty(b, "geek2" ,
{
value: 56,
writable: false
}
);
console.log(b);
console.log(result1);
let obj = {}
Reflect.defineProperty(obj, 'x' , { value: 71 })
console.log(obj.x)
|
Output
{}
true
{}
true
71
Supported Browsers:
The browsers are supported by JavaScript Reflect.defineProperty() Method are listed below:
- Google Chrome 49 and above
- Edge 12 and above
- Firefox 42 and above
- Opera 36 and above
- Safari 10 and above
We have a complete list of Javascript Reflects methods, to check those go through the JavaScript Reflect Reference article.
Last Updated :
07 Aug, 2023
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...