JavaScript Description de la propriété de verrouillage


Exemple

5

Un descripteur de propriété peut être verrouillé afin qu'aucune modification ne puisse y être apportée. Il sera toujours possible d'utiliser la propriété normalement, en lui assignant et en récupérant la valeur, mais toute tentative de redéfinition entraînera une exception.

La propriété configurable du descripteur de propriété est utilisée pour interdire toute autre modification sur le descripteur.

var obj = {};

// Define 'foo' as read only and lock it
Object.defineProperty(obj, "foo", { 
    value: "original value", 
    writable: false, 
    configurable: false
});
 
Object.defineProperty(obj, "foo", {writable: true});

Cette erreur sera lancée:

TypeError: impossible de redéfinir la propriété: foo

Et la propriété sera toujours en lecture seule.

obj.foo = "new value";
console.log(foo);

Sortie de la console

valeur d'origine