TypeScript ergänzt JavaScript um eine statische Beschreibung von Daten und Funktionen. Diese Beschreibung hilft dem Compiler und dem Editor, unpassende Verwendungen zu erkennen. Der daraus erzeugte JavaScript-Code benötigt weiterhin eine passende Behandlung von externen Daten.
Parameter und Rückgabewerte beschreiben
Das Beispiel legt fest, dass die Funktion einen Namen als Text erwartet und Text zurückgibt. Verwenden Sie die im Projekt eingerichtete TypeScript-Umgebung, um den Block zu prüfen und bei Bedarf zu übersetzen.
// Definition einer Variable mit Typ
let message: string = "Hallo, TypeScript!";
// Funktion, die einen string zurückgibt
function greet(name: string): string {
return "Hallo, " + name;
}
// Nutzung der Funktion mit einem string Argument
console.log(greet("Welt"));
Die Struktur eines Objekts festlegen
Ein Interface beschreibt die erwartete Form eines Objekts. Die Klasse im Beispiel setzt diese Form um und ergänzt eine eigene Eigenschaft. Die Beispieldaten sind fiktiv.
interface Person {
name: string;
alter: number;
}
class Mitarbeiter implements Person {
name: string;
alter: number;
position: string;
constructor(name: string, alter: number, position: string) {
this.name = name;
this.alter = alter;
this.position = position;
}
vorstellen() {
return `Mein Name ist ${this.name}, ich bin ${this.alter} Jahre alt und arbeite als ${this.position}.`;
}
}
const mitarbeiter1 = new Mitarbeiter("Max Mustermann", 30, "Entwickler");
console.log(mitarbeiter1.vorstellen());
Ein Interface muss keine Klasse erzwingen. Es kann auch den Vertrag für einfache Datenobjekte beschreiben. Wählen Sie die Struktur danach, welche Verantwortung der Code trägt und wie Daten zwischen Funktionen weitergegeben werden.
Statische Typen und Laufzeitprüfung verbinden
Eine Typannotation prüft keine Antwort eines HTTP-Dienstes und keine Nutzereingabe. Solche Daten müssen beim Eintritt in die Anwendung validiert werden. Eine erzwungene Typumwandlung kann dem Compiler eine Annahme mitteilen, ohne deren Richtigkeit zu belegen.
Legen Sie die Compiler-Einstellungen im Projekt fest und behandeln Sie neue Meldungen nachvollziehbar. Vermeiden Sie breite Ausnahmen, die relevante Bereiche von der Prüfung ausnehmen. Ergänzen Sie die statischen Checks durch Tests für das tatsächliche Verhalten, einschließlich fehlerhafter Eingaben.
Weiterführende Dokumentation: TypeScript: Everyday Types.