Implementieren Sie Klassenkonstanten in TypeScript

Migel Hewage Nimesha 21 Juni 2023
  1. Konstanten in TypeScript
  2. Implementieren Sie Klassenkonstanten mit readonly in TypeScript
  3. Implementieren Sie Klassenkonstanten mit readonly mit static in TypeScript
Implementieren Sie Klassenkonstanten 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
Migel Hewage Nimesha avatar Migel Hewage Nimesha avatar

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.

Verwandter Artikel - TypeScript Class