Open In App

JavaScript Object preventExtensions() Method

Improve
Improve
Like Article
Like
Save
Share
Report

The Object.preventExtensions() method in JavaScript is a standard built-in object which prevents new properties from ever being added to an object. This method also prevents reassigning of the object’s prototype.

Syntax: 

Object.preventExtensions( obj )

Parameters: This method accepts a single parameter as mentioned above and described below: 

  • obj: This parameter holds the object which must be made non-extensible.

Return value: This method returns the object after making it non-extensible.

Below examples illustrate the Object.preventExtensions() method in JavaScript:

Example 1: This example throws a type error as we cannot assign new properties to the object because Object.preventExtensions() method is used.

javascript




let geeks1 = {};
  
Object.preventExtensions(geeks1);
  
try {
    Object.defineProperty(geeks1, 'prop1', {
        value: "GFG",
        property1: "Geeksforgeeks",
        property2: "Best platform to learn"
    });
} catch (error) {
    console.log(error);
}


Output: 

TypeError: Cannot define property prop1, object is not extensible

Example 2: In this example, we will check if we have some properties of the object or not using the Object.hasOwnProperty() method with the Object.preventExtensions() method.

javascript




let geeks = {};
let geeks0 = Object.preventExtensions(geeks);
console.log(geeks0 === geeks);
  
const geeks1 = { "prop1": 555 };
Object.preventExtensions(geeks1);
delete geeks1.prop1;
console.log(geeks1.hasOwnProperty("prop1"));
  
const geeks2 = {};
Object.preventExtensions(geeks2);
geeks2.prop2 = 3;
  
console.log(
    geeks2.hasOwnProperty("prop2")
);
  
const geeks3 = {};
Object.preventExtensions(geeks3);
console.log(
    Object.isExtensible(geeks3)
);


Output: 

true
false
false
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.preventExtensions() method are listed below: 

  • Chrome 6 and above
  • Edge 12 and above
  • Firefox 4 and above
  • Opera 12 and above
  • safari 5.1 and above


Last Updated : 29 May, 2023
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads