Menu
Coddy logo textTech

Inline-Shape-Annotationen

Teil des Abschnitts Einführung in Luau der Lua-Journey von Coddy. Lektion 37 von 73.

In Lua verwendest du Tabellen schon seit Langem als Datensätze: local user = {name = "Ana", age = 20}. Nichts hindert dich daran, dich beim Feldnamen zu vertippen, ein Feld zu vergessen oder dort, wo eine Zahl hingehört, eine Zeichenkette zu speichern. Du erfährst davon erst, wenn der Code ausgeführt wird.

Luau ermöglicht es dir, die Struktur einer solchen Tabelle direkt in der Deklaration zu beschreiben, indem du jedes Feld und seinen Typ in geschweiften Klammern auflistest:

local user: {name: string, age: number} = {
    name = "Ana",
    age = 20,
}

Vergleiche das mit den Tabellentypen, die du bereits kennst: {number} beschreibt ein Array und {[string]: number} beschreibt eine Map mit beliebigen Zeichenketten als Schlüsseln. Eine Struktur ist genauer. Sie benennt jedes Feld einzeln und gibt jedem Feld seinen eigenen Typ.

Sobald die Struktur deklariert ist, überprüft der Typprüfer die Tabelle während der Bearbeitung anhand dieser Struktur. Ein fehlendes Feld oder ein falscher Werttyp wird markiert, bevor der Code überhaupt ausgeführt wird:

local user: {name: string, age: number} = {
    name = "Ana",
    age = "twenty", -- ✗ Typfehler: string ist keine number
}

Wie immer fügt die Annotation kein Laufzeitverhalten hinzu: Die Tabelle ist eine gewöhnliche Lua-Tabelle. Inline-Strukturen eignen sich perfekt für einmalige Strukturen, die du nicht wiederverwenden möchtest; in der nächsten Lektion wirst du den Strukturen einen Namen geben.

challenge icon

Aufgabe

Einfach

Erstelle eine Variable namens student mit einer Inline-Formannotation, die Folgendes deklariert:

  • name vom Typ string
  • studentId vom Typ number
  • isEnrolled vom Typ boolean

Initialisiere sie mit dem Namen "Sarah Johnson", der studentId 12345 und isEnrolled true.

Erstelle eine zweite Variable namens course mit einer Inline-Formannotation, die Folgendes deklariert:

  • title vom Typ string
  • credits vom Typ number
  • instructor vom Typ string

Initialisiere sie mit dem Titel "Introduction to Luau", den Credits 3 und dem Dozenten "Dr. Smith".

Gib jeweils in einer eigenen Zeile Folgendes aus:

  1. den Namen des Studenten
  2. die ID des Studenten
  3. den Kurstitel
  4. die Anzahl der Credits

Probier es selbst

-- Schreibe hier den Code
-- 1) deklariere student mit einer Inline-Shape-Annotation
-- 2) deklariere course mit einer Inline-Shape-Annotation
-- 3) gib die vier angeforderten Felder aus
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Einführung in Luau

Übe selbstständig: Online-Lua-Compiler