Cómo congelar un objeto en JavaScript

Cómo congelar un objeto en JavaScript
¿Alguna vez ha sido atrapado en una situación en la que se requiere hacer un objeto JavaScript inmutable y evitar que cambie los valores de las propiedades existentes?? Si ese es el caso, utilice el "Objeto.congelar()Método "en su programa JavaScript y hágalo un inmutable tipo de datos.

Que es objeto.método congele ()

El "Objeto.congelar()El método se utiliza para congelar un ya declarado objeto y restringir todo de manipulación como agregar nuevas propiedades, eliminar las propiedades existentes y actualizar los valores de las propiedades existentes.

Esta publicación discutirá el método para congelar un objeto en JavaScript. Entonces, comencemos!

Cómo congelar un objeto en JavaScript

Por defecto, los objetos JavaScript son de "mudable"Tipo de datos, lo que significa que sus valores se pueden cambiar con el tiempo. Sin embargo, puedes hacerlo "inmutable"Al declararlo como un"constante".

Cuando se crea un objeto usando el "estúpido"Palabra clave, aún puede reasignar o cambiar individualmente los valores de sus propiedades, pero al ser un tipo de datos inmutable, JavaScript no le permite reasignar todo el objeto a otra cosa.

Eche un vistazo al siguiente ejemplo para comprender el concepto declarado.

Ejemplo

Por ejemplo, crearemos un objeto llamado "empleado"Tener las siguientes propiedades:

Const Empleado =
Edad: 30,
Nombre: "Alex"
;
consola.log (empleado);

Después de hacerlo, intentaremos actualizar los valores del "empleado"Objeto en su conjunto:

Empleado =
Edad: 35,
Nombre: "Pablo"
;
consola.log (empleado);

Como puede ver, la ejecución de la operación especificada sale a "Error de tecleado"Qué establece que la asignación a una variable constante ya declarada no es posible:

Ahora, verificaremos el otro caso reasignando individualmente un valor al empleado objetos "nombre" propiedad:

empleado.nombre = "max";
consola.Log ("Después de cambiar el empleado.Nombre del valor de la propiedad ");
consola.log (empleado);

La salida dada significa que el "empleado.nombre"El valor de la propiedad se actualiza a"Máximo":

Ahora, se demuestra que aunque un objeto se convierte en "inmutable"Con la ayuda del"estúpido"Palabra clave, todavía le permite reasignar individualmente sus valores de propiedad.

Puede "congelar"Un objeto en una situación en la que se necesita para restringir que el objeto actualice las propiedades existentes o la adición de nuevas propiedades.

Quiero hacerlo? Siga la sección dividida a continuación para saber más sobre congelar un objeto en JavaScript.

Cómo congelar un objeto en JavaScript usando objeto.método congele ()

El "Objeto.congelar()El método se utiliza para congelar un objeto ya declarado. Cuando un objeto se congela, evita la eliminación de las propiedades del objeto existente, la adición de nuevas propiedades, la actualización de la enumerabilidad, la escritabilidad y la configurabilidad de las propiedades existentes. Además, no puede cambiar el prototipo de objeto y el valor de las propiedades existentes después de congelar el objeto relacionado.

Sintaxis

Objeto.congelar (obj)

Aquí, "obj"Representa el objeto JavaScript que se congelará con la ayuda del"Objeto.congelar()" método.

Ejemplo: cómo congelar un objeto en JavaScript usando objeto.método congele ()

En primer lugar, congelaremos el "empleado"Objeto usando el"Objeto.congelar()" método:

Objeto.congelar (empleado);

En el momento de congelar el "empleado"Objeto, el valor de"empleado.edad" es "30," y el "empleado.nombre"Está configurado como"Máximo":

En el siguiente paso, verificaremos si el "empleado"El objeto está congelado o no. Para este propósito, JavaScript ofrece "Objeto.está congelado()"Método integrado que acepta un JavaScript"objeto"Como argumento y regresa"verdadero"Si el objeto aprobado se congela, de lo contrario el caso de devolución de"Objeto.está congelado()"El método se establecerá en"FALSO":

Objeto.isfrozen (empleado);

Producción

El valor devuelto por el "Objeto.está congelado()"El método es"verdadero,"Que indica que el"empleado"El objeto se congela con éxito.

Actualización de propiedades de objeto congelado en modo estricto frente al modo no rictamente

Ahora, intentaremos actualizar el "empleado.nombre"Valor de propiedad para"Pablo":

empleado.nombre = "Pablo";
consola.log (empleado);

Si estas en "no rictivo"Modo, entonces la operación especificada del valor de actualización fallará en silencio:

Sin embargo, en el caso de "Modo estricto", a "Error de tecleado"También se mostrará en la consola, mientras termina la operación de actualización del congelado"empleado" objeto:

"Use estricto";
empleado.nombre = "Pablo";
consola.log (empleado);

Producción

Eliminar la propiedad del objeto congelado en modo estricto frente al modo no riguroso

Del mismo modo, no puede eliminar una propiedad existente de un objeto congelado:

Eliminar empleado.nombre;
consola.log (empleado);

El código anterior intentará eliminar el "nombre"Propiedad del"empleado"Objeto y falla en silencio en"no rictivo" modo:

Mientras en "estricto modo", a "Error de tecleado"Se mostrará en la consola, que establece que no puede eliminar el"nombre"Propiedad del"empleado"Objeto que hemos congelado con la ayuda del"Objeto.congelar()" método:

"Use estricto";
Eliminar empleado.nombre;
consola.log (empleado);

Producción

Esa fue toda la información esencial relacionada con la congelación de un objeto en JavaScript. Puede investigar más de acuerdo con sus preferencias.

Conclusión

El javascript Objeto.congelar() El método se utiliza para congelar un objeto declarado. Cuando un objeto se congela, evita la eliminación de las propiedades del objeto existente, la adición de nuevas propiedades, la actualización de la enumerabilidad, la escritabilidad y la configurabilidad de las propiedades existentes. Además, no puede cambiar el prototipo de objeto y el valor de las propiedades existentes después de congelarlo. Este artículo discutió el método para congelar un objeto en Javascript.