Heterogene Enums
Teil des Abschnitts Einführung in TypeScript der JavaScript-Journey von Coddy — Lektion 55 von 73.
TypeScript unterstützt auch heterogene Enums – Enums, die eine Mischung aus sowohl String- als auch numerischen Elementen innerhalb derselben Deklaration enthalten.
Hier erfahren Sie, wie Sie ein heterogenes Enum erstellen können:
enum MixedEnum {
No = 0,
Yes = "YES",
Maybe = 1
}In diesem Beispiel sind No und Maybe numerische Mitglieder, während Yes ein String-Mitglied ist. TypeScript erlaubt diese Flexibilität, obwohl es wichtig ist zu beachten, dass heterogene Enums in der Praxis selten verwendet werden.
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Aufgabe
EinfachErstellen Sie ein heterogenes Enum namens ResponseCode, das String- und numerische Werte mischt:
Successinitialisiert mit200Errorinitialisiert mit"ERROR"NotFoundinitialisiert mit404Timeoutinitialisiert mit"TIMEOUT"
Erstellen Sie eine Funktion namens handleResponse, die einen Parameter entgegennimmt:
codevom TypResponseCode
Die Funktion sollte:
- Den Response-Code prüfen und basierend auf dem Wert unterschiedliche Nachrichten ausgeben
- Wenn der Code
ResponseCode.Successist, geben Sie"Request successful"aus - Wenn der Code
ResponseCode.Errorist, geben Sie"General error occurred"aus - Wenn der Code
ResponseCode.NotFoundist, geben Sie"Resource not found"aus - Wenn der Code
ResponseCode.Timeoutist, geben Sie"Request timed out"aus - Einen Rückgabetyp von
voidhaben
Erstellen Sie vier Variablen, um die Enum-Werte zu demonstrieren:
successCodevom TypResponseCodeund weisen Sie ihmResponseCode.SuccesszuerrorCodevom TypResponseCodeund weisen Sie ihmResponseCode.ErrorzunotFoundCodevom TypResponseCodeund weisen Sie ihmResponseCode.NotFoundzutimeoutCodevom TypResponseCodeund weisen Sie ihmResponseCode.Timeoutzu
Geben Sie die folgenden Ausgaben aus:
- Geben Sie den Wert von
successCodeaus - Geben Sie den Wert von
errorCodeaus - Geben Sie den Wert von
notFoundCodeaus - Geben Sie den Wert von
timeoutCodeaus - Rufen Sie
handleResponsemitResponseCode.Successauf - Rufen Sie
handleResponsemiterrorCodeauf - Rufen Sie
handleResponsemit dem numerischen Wert404auf
Spickzettel
TypeScript unterstützt heterogene Enums, die eine Mischung aus sowohl String- als auch numerischen Elementen innerhalb derselben Deklaration enthalten:
enum MixedEnum {
No = 0,
Yes = "YES",
Maybe = 1
}In heterogenen Enums können Sie numerische Werte und String-Werte mischen. Obwohl TypeScript diese Flexibilität bietet, werden heterogene Enums in der Praxis selten verwendet.
Probier es selbst
// TODO: Schreiben Sie Ihren Code hier
// Erstellen Sie das ResponseCode-Enum
// Erstellen Sie die handleResponse-Funktion
// Erstellen Sie die Demonstrationsvariablen
// Geben Sie die erforderlichen Ausgaben ausDiese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Einführung in TypeScript
1Erste Schritte mit TS
Was ist TypeScript?Warum TypeScript verwenden?Dein erster TypeScript-CodeKompilierungsprozess & FehlerZusammenfassung: Einführung in TS4Arbeiten mit Funktionen
Typisierung von Parametern & RückgabewertenTypisierung von Arrow-FunktionenDer Rückgabetyp 'void'Optionale Parameter mit '?'Standard-ParameterwerteTypisierung von Rest-ParameternDefinieren von FunktionstypenZusammenfassung: Typisierte Funktionen erstellen2Basis-Typen
Basis-Typen: str, num, booleanDer 'any'-Typ: Der NotausgangDer 'unknown'-TypArbeiten mit 'null' & 'undef'Typinferenz in der PraxisExplizite Typ-AnnotationenZusammenfassung: Übung zu Basis-Typen5Typen: Aliase, Unions & Intersections
Typ-Aliase für primitive DatentypenUnion-Typen ('|')Arbeiten mit Union-TypenLiteral-TypenIntersection-Typen ('&')Kombinieren von Typ-AliasenZusammenfassung: Fortgeschrittene Typ-Kombinationen3Datenstruktur: Arrays & Tupel
Typisierte Arrays'readonly'-Modifikator für ArraysWas ist ein Tupel?Deklarieren von und Zugriff auf TupelDestrukturierung von TupelnReadonly-TupelMehrdimensionale typisierte ArraysSpread-Operator mit ArraysZusammenfassung: Arrays und Tupel