Welchen Zweck hat das Schlüsselwort 'readonly' in TypeScript?

Verwendung des Schlüsselworts 'readonly' in TypeScript

Das Schlüsselwort readonly in TypeScript stellt einen Modifizierer dar, der für Eigenschaften in einer Klasse oder einen Indexsignaturtyp verwendet werden kann. Das Hinzufügen von readonly vor der Deklaration einer Eigenschaft bedeutet, dass diese Eigenschaft nur gelesen und nicht verändert werden kann.

Das erklärte Ziel ist laut der korrekten Antwort in der Quizfrage, "eine Variable unveränderlich zu machen". Dies ist besonders nützlich in Situationen, in denen Sie Datenimmunität benötigen oder Datenhaben, die nach der ursprünglichen Zuweisung nicht geändert werden sollten.

Beispiel zur Verwendung des Schlüsselworts 'readonly'

Betrachten Sie das folgende Beispiel:

class Punkt {
    readonly x: number;
    readonly y: number;

    constructor(x: number, y: number) {
        this.x = x;
        this.y = y;
    }
}

let p = new Punkt(10, 20);
console.log(p.x); // 10
p.x = 5; // Fehler: X ist schreibgeschützt und kann nicht geändert werden

In diesem Fall können x und y nur während der Deklaration oder im Konstruktor der Klasse Punkt initialisiert oder zugewiesen werden. Versuche zur Änderung der Werte zu einem späteren Zeitpunkt führen zu einem Kompilierungsfehler.

Best Practices und weitere Kenntnisse

Die Verwendung des Schlüsselworts "readonly" ist eine gute Praxis in TypeScript, da es dazu beiträgt, die Unveränderlichkeit und Stabilität des Codes sicherzustellen, was zu weniger Fehlern führt.

Beachten Sie jedoch, dass readonly Posten nicht unveränderlich sind. Wenn der Wert eines readonly-Postens ein Objekt ist, können die Eigenschaften dieses Objekts verändert werden. readonly stellt sicher, dass die Variable selbst nicht neuzuweisen ist, garantiert aber nicht, dass ihr Inhalt unveränderlich ist.

Related Questions

Finden Sie das nützlich?