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, 'zambiatek1', { value: 42 })) {
    console.log('zambiatek1 assigned');
 
} else {
    console.log('problem created by  zambiatek1');
}
 
console.log(object1.zambiatek1);
 
const object2 = {};
const object3 = {};
(Reflect.defineProperty(object2, 'zambiatek2', { value: 97 }))
if (Reflect.defineProperty(object3, 'zambiatek3', { value: 23 })) {
    console.log('zambiatek3 assigned');
} else {
    console.log('problem created by zambiatek3');
}
console.log(object3.zambiatek3);
console.log(object2.zambiatek2);


Output

zambiatek1 assigned
42
zambiatek3 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 })  // true
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.

Whether you’re preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape, zambiatek Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we’ve already empowered, and we’re here to do the same for you. Don’t miss out – check it out now!

Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button