Quand on travaille avec TypeScript, qui est un sur-ensemble typé de JavaScript offrant des fonctionnalités supplémentaires pour le développement d'applications complexes, on peut rencontrer des situations où l'on souhaite rendre des propriétés de classe non modifiables. Pour atteindre ce niveau d'immunité, TypeScript propose le mot-clé 'readonly'.
Dans une classe TypeScript, le mot-clé 'readonly' est utilisé pour déclarer des membres de la classe en lecture seule. Cela signifie qu'une fois qu'une valeur est assignée à une propriété 'readonly', elle ne peut pas être modifiée ultérieurement.
Regardez l'exemple de code ci-dessous:
class Exemple {
readonly maPropriete: string;
constructor(maPropriete: string) {
this.maPropriete = maPropriete;
}
}
let exemple = new Exemple("Bonjour");
console.log(exemple.maPropriete); // affiche "Bonjour"
exemple.maPropriete = "Au Revoir"; // Erreur : Cannot assign to 'maPropriete' because it is a read-only property
Dans cet exemple, maPropriete
est déclarée comme une propriété en lecture seule dans la classe Exemple
. Cela signifie que la valeur de maPropriete
peut seulement être assignée lors de l'initialisation ou dans le constructeur de Exemple
.
L'utilisation de propriétés en lecture seule aide à la sécurisation et à l'encapsulation des données dans votre code. C'est un outil utile pour prévenir les modifications accidentelles des valeurs plus tard dans le script.
Il est important de noter que le mot-clé 'readonly' est différent du mot-clé 'const'. Alors que 'readonly' est utilisé pour les propriétés de classe, 'const' est principalement utilisé pour les déclarations de variables, bien que les deux offrent des garanties d'immuabilité.
Dans l'ensemble, l'utilisation judicieuse du mot-clé 'readonly' peut aider à rendre votre code plus robuste, sécurisé et prévisible.