Thursday, September 4, 2025
HomeLanguagesJavascriptWhat is the difference between freeze and seal in JavaScript ?

What is the difference between freeze and seal in JavaScript ?

Both freeze and seal are used to create non-extensible objects in JavaScript, but there are plenty of differences between them. 

  • Object.seal() allows changes to the existing properties of an object. It prevents from deletion of existing properties but cannot prevent them from external changes. 
  • Object.freeze() does not allow so. It makes an object immune to everything even little changes cannot be made. 

Syntax:

Object.seal(objectname);
Object.freeze(objectname);

Example 1: This example, depicts how Object.seal() is used to create a non-extensible object, but that does not prevent the value of the object to be changed and it is seen that the value gets updated to 20. 

javascript




// creates an object
let obj = {
    // assigns 10 to value
    value: 10
};
// creates a non-extensible object
Object.seal(obj);
// the value gets updated to 20
obj.value = 20;
console.log(obj.value);


Output:

20

Example 2: This example, depicts how Object.freeze() is used to create a non-extensible object, but where the existing value of the object is prevented from being changed and 10 is given as the output.

javascript




let obj = {
    // assigns 10 to value
    value: 10
};
// creates a non-extensible object
Object.freeze(obj);
// updates the value
obj.value = 20;
// but cannot change the existing value
console.log(obj.value);


Output:

10

Let us see the differences in a tabular form:

freeze

seal

It is used to prevent the object from adding new properties It is used to make the properties of an object non-configurable.
It is also used so that the current existing properties should not be modified It is also used so that the new properties do not get added
It takes a parameter as an object It takes parameters as an object
Its return type is of the object type. Its return type is e-sealed object type.
RELATED ARTICLES

Most Popular

Dominic
32264 POSTS0 COMMENTS
Milvus
81 POSTS0 COMMENTS
Nango Kala
6629 POSTS0 COMMENTS
Nicole Veronica
11799 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11858 POSTS0 COMMENTS
Shaida Kate Naidoo
6749 POSTS0 COMMENTS
Ted Musemwa
7025 POSTS0 COMMENTS
Thapelo Manthata
6698 POSTS0 COMMENTS
Umr Jansen
6716 POSTS0 COMMENTS