Ich habe gerade beim Versuch, eine Schnittstelle in TypeScript zu erstellen, festgestellt, dass "type" entweder ein Schlüsselwort oder ein reserviertes Wort ist. Wenn Sie beispielsweise die folgende Benutzeroberfläche erstellen, wird "Typ" in Visual Studio 2013 mit TypeScript 1.4 blau angezeigt:
interface IExampleInterface {
type: string;
}
Angenommen, Sie versuchen dann, die Schnittstelle in einer Klasse wie folgt zu implementieren:
class ExampleClass implements IExampleInterface {
public type: string;
constructor() {
this.type = "Example";
}
}
Wenn Sie in der ersten Zeile der Klasse das Wort "Typ" eingeben (Entschuldigung), um die für die Schnittstelle erforderliche Eigenschaft zu implementieren, wird IntelliSense mit "Typ" angezeigt, das dasselbe Symbol wie andere Schlüsselwörter wie "Typ" oder "Neu" hat ".
Ich habe mich umgesehen und konnte dieses GitHub-Problem finden, in dem "type" als "reserviertes Wort im strengen Modus" in TypeScript aufgeführt ist, aber ich habe keine weiteren Informationen darüber gefunden, wozu es eigentlich dient.
Ich vermute, ich habe einen Hirnfurz und das ist etwas Offensichtliches, das ich bereits wissen sollte, aber wofür ist das reservierte Wort "Typ" in TypeScript?
quelle
Type Alias
Um Ihren Typen einen semantischen Namen zu geben: basarat.gitbooks.io/typescript/content/docs/types/…Antworten:
Es wird für "Typ-Aliase" verwendet. Beispielsweise:
Referenz: TypeScript Specification v1.5 (Abschnitt 3.9, "Type Aliases", Seiten 46 und 47)
Update : Jetzt zu Abschnitt 3.10 der 1.8-Spezifikation . Vielen Dank an @RandallFlagg für die aktualisierte Spezifikation und den Link
Update : TypeScript Handbook , Suche "Type Aliases" kann Sie zum entsprechenden Abschnitt führen.
quelle
Geben Sie das Schlüsselwort in Typoskript ein:
In Typoskript definiert das Schlüsselwort type einen Alias für einen Typ. Wir können auch das Schlüsselwort type verwenden, um benutzerdefinierte Typen zu definieren. Dies lässt sich am besten anhand eines Beispiels erklären:
Sie können Arten von Skalar - Typen (komponieren
string
,number
usw.), aber auch von Literalwerte wie1
oder'mystring'
. Sie können sogar Typen anderer benutzerdefinierter Typen erstellen. Zum Beispiel hat Typmadness
die Typenrandom
undcolor
drin.Wenn wir dann versuchen, ein String-Literal zu unserem zu machen (und wir haben IntelliSense in unserer IDE), zeigt es Vorschläge:
Es zeigt alle Farben, deren Typ-Wahnsinn sich aus der Typ-Farbe ergibt, 'zufällig', die vom Typ-Zufall abgeleitet ist, und schließlich die Zeichenfolge,
'foo'
die sich auf dem Typ-Wahnsinn selbst befindet.quelle
type color = "blue" | "red" | "yellow" | "purple";
Anweisungen innerhalb oder außerhalb der Klasse deklariert ?