Comment geler un objet en javascript

Comment geler un objet en javascript
Avez-vous déjà été pris dans une situation où il est nécessaire de fabriquer un objet JavaScript immuable et de l'empêcher de modifier les valeurs des propriétés existantes? Si tel est le cas, utilisez le «Objet.gel()«Méthode dans votre programme JavaScript et en faire un immuable Type de données.

Qu'est-ce que l'objet.Méthode Freeze ()

Le "Objet.gel()«La méthode est utilisée pour gel un déjà déclaré objet et limiter tout de manipulation comme l'ajout de nouvelles propriétés, la suppression des propriétés existantes et la mise à jour des valeurs des propriétés existantes.

Cet article discutera de la méthode pour geler un objet en javascript. Alors, commençons!

Comment geler un objet en javascript

Par défaut, les objets JavaScript sont de «mutable»Type de données, ce qui signifie que leurs valeurs peuvent être modifiées au fil du temps. Cependant, vous pouvez le faire "immuable"En le déclarant comme«constant".

Lorsqu'un objet est créé en utilisant le «const”Mot-clé, vous pouvez toujours réaffecter ou modifier individuellement les valeurs de ses propriétés, mais étant un type de données immuable, JavaScript ne vous permet pas de réaffecter l'objet entier à autre chose.

Jetez un œil à l'exemple suivant pour comprendre le concept déclaré.

Exemple

Par exemple, nous créerons un objet nommé «employé«Avoir les propriétés suivantes:

const Employee =
Âge: 30,
Nom: "Alex"
;
console.journal (employé);

Après cela, nous essaierons de mettre à jour les valeurs du «employé”Objet dans son ensemble:

Employee =
Âge: 35,
Nom: "Paul"
;
console.journal (employé);

Comme vous pouvez le voir, l'exécution de l'opération spécifiée sortira un «Erreur-type«Ce qui indique que cette affectation à une variable constante déjà déclarée n'est pas possible:

Maintenant, nous vérifierons l'autre cas en réinstallant individuellement une valeur employé objets "nom" propriété:

employé.name = "max";
console.journal ("après avoir changé l'employé.Nom Valeur de la propriété ");
console.journal (employé);

La sortie donnée signifie que le «employé.nom«La valeur de la propriété est mise à jour vers«Max»:

Maintenant, il est prouvé que bien qu'un objet devienne «immuable"Avec l'aide du"const»Mot-clé, il vous permet toujours de réaffecter individuellement ses valeurs de propriété.

Tu peux "gel«Un objet dans une situation où il est nécessaire pour empêcher l'objet de mettre à jour les propriétés existantes ou l'ajout de nouvelles propriétés.

Veux le faire? Suivez la section ci-dessous pour en savoir plus sur la congélation d'un objet en JavaScript.

Comment geler un objet en javascript en utilisant l'objet.Méthode Freeze ()

Le "Objet.gel()«La méthode est utilisée pour geler un objet déjà déclaré. Lorsqu'un objet est congélé, il empêche la suppression des propriétés d'objet existantes, l'ajout de nouvelles propriétés, la mise à jour de l'énumérabilité, de l'écriture et de la configurabilité des propriétés existantes. De plus, vous ne pouvez pas modifier le prototype d'objet et la valeur des propriétés existantes après avoir gelé l'objet associé.

Syntaxe

Objet.gel (obj)

Ici, "obj»Représente l'objet JavaScript qui sera congelé à l'aide du«Objet.gel()" méthode.

Exemple: comment geler un objet en javascript à l'aide d'objet.Méthode Freeze ()

Tout d'abord, nous gelerons le «employé"Objet en utilisant le"Objet.gel()" méthode:

Objet.gel (employé);

Au moment de geler le «employé"Objet, la valeur de"employé.âge" est "30," et le "employé.nom"Est défini comme"Max»:

Dans la prochaine étape, nous vérifierons si le «employé"L'objet est congelé ou non. À cette fin, JavaScript propose «Objet.est gelé()"Méthode intégrée qui accepte un javascript"objet"Comme argument et revient"vrai«Si l'objet passé est congelé, sinon le cas de retour de«Objet.est gelé()«La méthode sera définie sur«FAUX»:

Objet.isfrozen (employé);

Sortir

La valeur renvoyée par le «Objet.est gelé()"La méthode est"vrai,«Ce qui indique que le«employé"L'objet est congelé avec succès.

Mise à jour de la propriété d'objet congélé en mode strict vs mode non stricte

Maintenant, nous allons essayer de mettre à jour le "employé.nom«Valeur de la propriété à«Paul»:

employé.name = "Paul";
console.journal (employé);

Si vous êtes dans "non-stricte«Mode, alors le fonctionnement spécifié de la valeur de mise à jour échouera silencieusement:

Cependant, dans le cas de «mode strict", un "Erreur-type"Sera également affiché sur la console, tout en terminant l'opération de mise à jour du congelé"employé" objet:

"Utilisez strict";
employé.name = "Paul";
console.journal (employé);

Sortir

Suppression de la propriété d'objet congélé en mode strict vs mode non stricte

De même, vous ne pouvez pas supprimer une propriété existante d'un objet congélé:

Supprimer l'employé.nom;
console.journal (employé);

Le code donné ci-dessus essaiera de supprimer le «nom«Propriété du«employé"Object et échouer silencieusement dans"non-stricte»Mode:

Alors que, dans «strict mode", un "Erreur-type"Sera diffusé sur la console, qui indique que vous ne pouvez pas supprimer le"nom«Propriété du«employé"Objet que nous avons congélé avec l'aide du"Objet.gel()" méthode:

"Utilisez strict";
Supprimer l'employé.nom;
console.journal (employé);

Sortir

C'était toutes des informations essentielles liées à la congélation d'un objet en javascript. Vous pouvez enquêter davantage en fonction de vos préférences.

Conclusion

Le javascript Objet.gel() la méthode est utilisée pour geler un objet déclaré. Lorsqu'un objet est congélé, il empêche la suppression des propriétés d'objet existantes, l'ajout de nouvelles propriétés, la mise à jour de l'énumérabilité, de l'écriture et de la configurabilité des propriétés existantes. De plus, vous ne pouvez pas modifier le prototype d'objet et la valeur des propriétés existantes après l'avoir gelé. Cet article a discuté de la méthode pour gel un objet dans Javascrip.