Implementieren Sie Klassenkonstanten in TypeScript
- Konstanten in TypeScript
-
Implementieren Sie Klassenkonstanten mit
readonly
in TypeScript -
Implementieren Sie Klassenkonstanten mit
readonly
mitstatic
in TypeScript
In diesem Artikel erfahren Sie, wie Sie Klassenkonstanten mit dem Schlüsselwort readonly
und dem Schlüsselwort static
mit dem Schlüsselwort readonly
implementieren.
Konstanten in TypeScript
Konstanten in Programmiersprachen sind die festen Werte, deren einmal zugewiesener Wert nicht mehr geändert werden kann. Klassenkonstanten sind konstante Felder innerhalb einer Klasse, die nach ihrer Zuweisung nicht mehr geändert werden können.
In TypeScript ist das Erstellen einer Klasse eine einfache Aufgabe. Unten ist die Syntax, wie wir eine Klasse in TypeScript erstellen können.
class className {
// Block of code
}
Das obige ist die einfache Methode zum Erstellen einer Klasse in TypeScript. Wir können einigen Methoden folgen, um eine Klasse mit konstanten Feldern oder Eigenschaften mit Werten zu erstellen, die nicht veränderbar oder veränderbar sind.
In TypeScript ist es wichtig, daran zu denken, dass ein Klassenmitglied nicht das Schlüsselwort const
haben kann. Eine Inline-Deklaration einer Konstante eines Klassenmembers ist in TypeScript nicht möglich.
Wenn wir dies versuchen, gibt der Compiler einen Kompilierungsfehler aus. Um eine Klasse konstant zu machen, können wir einige in TypeScript verfügbare Optionen implementieren, die in den folgenden Abschnitten besprochen werden.
Implementieren Sie Klassenkonstanten mit readonly
in TypeScript
Nachdem eine Klasse erstellt wurde, um die Klasseneigenschaften oder -felder unveränderlich zu machen, ist es möglich, das Schlüsselwort readonly
zu verwenden, das in TypeScript 2.0 eingeführt wurde, um Klassenfelder oder -eigenschaften als unveränderlich zu definieren. Wenn wir versuchen, die Eigenschaften zu ändern, wird eine Fehlermeldung angezeigt.
Beispiel:
class DisplayOutput{
readonly name : string = "Only using readonly";
displayOutput() : void{
console.log(this.name);
}
}
let instance = new DisplayOutput();
instance.displayOutput();
Ausgang:
Only using readonly
Wenn nur readonly
verwendet wird, wirkt es nicht vollständig als Konstante. Dies liegt daran, dass die Zuweisung beim Konstruktor erlaubt ist.
Implementieren Sie Klassenkonstanten mit readonly
mit static
in TypeScript
Eine andere Methode, die wir verwenden können, um Klassenfelder oder Eigenschaften unveränderlich zu machen, ist das Schlüsselwort readonly
mit dem Schlüsselwort static
. Der Vorteil gegenüber der reinen Verwendung von readonly
ist, dass die Zuweisung im Konstruktor nicht erlaubt ist und somit nur an einer Stelle steht.
Beispiel:
class DisplayOutput{
static readonly username : string = "Using both static and readonly keywords";
static displayOutput() : void {
console.log(DisplayOutput.username);
}
}
DisplayOutput.displayOutput();
Ausgang:
Using both static and readonly keywords
Nimesha is a Full-stack Software Engineer for more than five years, he loves technology, as technology has the power to solve our many problems within just a minute. He have been contributing to various projects over the last 5+ years and working with almost all the so-called 03 tiers(DB, M-Tier, and Client). Recently, he has started working with DevOps technologies such as Azure administration, Kubernetes, Terraform automation, and Bash scripting as well.