JavaScript Reflect.preventExtensions() method in Javascript is used to prevent future extensions to the object which means preventing from adding new properties to the object.
Syntax:
Reflect.preventExtensions( obj )
Parameters: This method accepts a single parameter as mentioned above and described below:
- Obj: This parameter holds the target object and it is used to prevent extensions.
Return value: This method returns the Boolean value. It returns true for the successful prevention of the extensions. Otherwise, returns false.
Exceptions: A TypeError is an exception given as the result when the target is not an Object.
The below example illustrates the Reflect.preventExtensions() method in JavaScript:
Example 1: In this example, we will prevent the object to get new properties using the Reflect.preventExtensions() method in JavaScript:
javascript
const object1 = {};Â
console.log(Reflect.isExtensible(object1));Reflect.preventExtensions(object1);console.log(Reflect.isExtensible(object1));Â
const obj = {};Reflect.preventExtensions(obj);console.log(Â Â Â Â Reflect.isExtensible(obj));obj.val = 3;console.log(Â Â Â Â obj.hasOwnProperty("val")); |
true false false false
Example 2: In this example, we will prevent the object to get new properties using the Reflect.preventExtensions() method in JavaScript:
javascript
let empty = {}console.log(Reflect.isExtensible(empty));console.log(Reflect.preventExtensions(empty));console.log(Reflect.isExtensible(empty));Â
const obj = { "val1": 3, "val2": 4 };Reflect.preventExtensions(obj);console.log(obj.hasOwnProperty("val1"));delete obj.val1;console.log(obj.hasOwnProperty("val2")); |
true true false true true
Supported Browsers:
The browsers supported by Reflect.preventExtensions() 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.
