Beschreibe die Form deiner Objekte mit präzisen Typen und mache sie dann mit Interfaces wiederverwendbar.
Diese Lektion in Kodokon öffnenIn JavaScript gruppiert ein Objekt mehrere zusammengehörige Informationen als Schlüssel-Wert-Paare, wie eine Karteikarte: Ein Buch hat einen Titel und eine Seitenzahl. In TypeScript kannst du die genaue Form eines Objekts beschreiben: welche Eigenschaften es enthält und welchen Typ jede davon hat.
const book: { title: string; pages: number } = {
title: "The Little Prince",
pages: 96,
};
console.log(book.title); // "The Little Prince"Die Form jedes Mal auszuschreiben wird schnell mühsam. Ein Interface gibt dieser Form einen Namen, damit du sie überall wiederverwenden kannst. Du deklarierst es mit dem Schlüsselwort interface, gefolgt von einem Namen (per Konvention großgeschrieben) und dann der Liste der Eigenschaften mit ihren Typen.
interface Recipe {
name: string;
servings: number;
isVegetarian: boolean;
}
const pancakes: Recipe = {
name: "Pancakes",
servings: 4,
isVegetarian: true,
};Alle Eigenschaften eines Interface sind standardmäßig Pflicht: servings zu vergessen würde einen Fehler auslösen. Um eine Eigenschaft optional zu machen, fügst du direkt hinter ihrem Namen ein Fragezeichen ? hinzu. Das Objekt lässt sich dann mit oder ohne diese Eigenschaft erstellen.
interface Contact {
name: string;
phone: string;
email?: string; // optional thanks to the ?
}
const alice: Contact = {
name: "Alice",
phone: "0601020304",
}; // allowed: email can be omitted