Skip to content
Related Articles

Related Articles

Improve Article
Save Article
Like Article

JavaScript | Reflect.defineProperty() Method

  • Last Updated : 29 Sep, 2021

The 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 accept three parameters as mentioned above and described below: 
 

  • target: This parameter defines the property and the target object.
  • propertyKey: This parameter is 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 exception given as the result, when the target is not an Object.
Below examples illustrate the Reflect.defineProperty() method in JavaScript:
Example 1: 
 

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: 
 

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})  // true
console.log(obj.x)

Output: 
 

Object {  }
true
Object {  }
true
71

Supported Browsers: The browsers 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

 


My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!