JavaScript Object seal() Method
TheObject.seal()
method prevents new properties from being added to an object. However, it still lets you modify the existing properties of the object.
Let's see how:
What Does Object.seal() Do?
Here's what happens when you use Object.seal()
:
- Prevents Adding New Properties: You cannot add new properties to the object.
- Prevents Deleting Properties: You cannot remove existing properties from the object.
- Allows Modifying Existing Properties: You can still change the values of the existing properties.
How to
We can "seal" an object by using Object.seal(yourObject)
.
Let's look at a simple example to understand how Object.seal()
works:
// Creating an object let car = { brand: "Toyota", model: "Corolla" }; // Sealing the object Object.seal(car); // Trying to add a new property car.year = 2024; console.log(car.year); // Output: undefined (Cannot add new property) // Trying to delete an existing property delete car.model; console.log(car.model); // Output: "Corolla" (Cannot delete existing property) // Modifying an existing property car.brand = "Honda"; console.log(car.brand); // Output: "Honda" (Can modify existing property)
Checking if an Object is Sealed
You can check if an object is sealed using Object.isSealed()
method. This method returns true
if the object is sealed and false
otherwise.
// Example checking if Object is sealed let car = { brand: "Toyota", model: "Corolla" }; Object.seal(car); console.log(Object.isSealed(car)); // Output: true