Zusammenfassung: Objektstrukturen definieren
Teil des Abschnitts Einführung in TypeScript der JavaScript-Journey von Coddy. Lektion 44 von 73.
Aufgabe
EinfachErstelle ein Interface namens Computer mit den folgenden Eigenschaften und Methoden:
idvom Typnumber(readonly)brandvom TypstringramInGBvom Typnumber(optional)isLaptopvom Typboolean- die Methode
boot, die keine Parameter übernimmt undvoidzurückgibt
Erstelle ein Interface namens Server mit den folgenden Eigenschaften und Methoden:
hostnamevom Typstring(readonly)operatingSystemvom TypstringmaxConnectionsvom Typnumber(optional)isOnlinevom Typboolean- die Methode
restart, die keine Parameter übernimmt undvoidzurückgibt - die Methode
getStatus, die keine Parameter übernimmt und einenstringzurückgibt
Erstelle mithilfe deiner Interfaces die folgenden Variablen:
- Erstelle eine Variable namens
workstationvom TypComputermit der id1001, der Marke"Dell", ramInGB16, isLaptopfalseund einerboot-Methode, die"Dell workstation is booting up..."ausgibt - Erstelle eine Variable namens
laptopvom TypComputermit der id1002, der Marke"MacBook", isLaptoptrueund einerboot-Methode, die"MacBook laptop is starting..."ausgibt - Erstelle eine Variable namens
webServervom TypServermit dem Hostnamen"web-01", dem Betriebssystem"Ubuntu", maxConnections1000, isOnlinetrue, einerrestart-Methode, die"Restarting web-01 server..."ausgibt, und einergetStatus-Methode, die"web-01 is online"zurückgibt
Erstelle eine Funktion namens checkComputerSpecs, die einen Parameter vom Typ Computer akzeptiert und einen string zurückgibt. Die Funktion soll die Marke und den Typ des Computers im Format "[brand] [laptop/desktop]" zurückgeben (verwende "laptop", wenn isLaptop true ist, andernfalls "desktop").
Erstelle eine Funktion namens getServerInfo, die einen Parameter vom Typ Server akzeptiert und einen string im Format "[hostname] runs [operatingSystem]" zurückgibt.
Gib die folgenden Ausgaben in separaten Zeilen aus:
- Rufe die
boot-Methode fürworkstationauf - Rufe die
boot-Methode fürlaptopauf - Rufe
checkComputerSpecsmitworkstationauf und gib das Ergebnis aus - Rufe
checkComputerSpecsmitlaptopauf und gib das Ergebnis aus - Rufe die
getStatus-Methode fürwebServerauf und gib das Ergebnis aus - Rufe
getServerInfomitwebServerauf und gib das Ergebnis aus - Gib die id von
workstationaus - Rufe die
restart-Methode fürwebServerauf
Probier es selbst
// TODO: Schreiben Sie Ihren Code hier
// Erstellen Sie das Computer-Interface mit den erforderlichen Eigenschaften und Methoden
// Erstellen Sie das Server-Interface mit den erforderlichen Eigenschaften und Methoden
// Erstellen Sie die Variablen workstation, laptop und webServer
// Erstellen Sie die Funktionen checkComputerSpecs und getServerInfo
// Geben Sie alle erforderlichen Ausgaben ausAlle 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 Tupel6Typisierung von Objekten und Interfaces
Inline-Typanmerkungen für ObjekteType-Aliase für ObjekteEinführung in InterfacesInterfaces vs. Type-AliaseOptionale & Readonly-EigenschaftenErweitern von Interfaces und TypenMethoden zu Interfaces hinzufügenZusammenfassung: Objektstrukturen definierenÜbe selbstständig: TypeScript-Playground