オブジェクトの形を正確な型で記述し、それからインターフェースで再利用可能にしましょう。
このレッスンを Kodokon で開くJavaScriptでは、オブジェクトは関連するいくつかの情報をキーと値のペアとしてまとめます。まるでカードのように、本にはタイトルとページ数があります。TypeScriptでは、オブジェクトの正確な形を記述できます。どんなプロパティを含み、それぞれがどんな型なのかを、です。
const book: { title: string; pages: number } = {
title: "The Little Prince",
pages: 96,
};
console.log(book.title); // "The Little Prince"毎回その形を書き出すのは、すぐに繰り返しばかりになってしまいます。インターフェースはその形に名前を与え、どこでも再利用できるようにします。interface キーワードに続けて名前(慣習として大文字始まり)を書き、それからプロパティとその型のリストを書いて宣言します。
interface Recipe {
name: string;
servings: number;
isVegetarian: boolean;
}
const pancakes: Recipe = {
name: "Pancakes",
servings: 4,
isVegetarian: true,
};インターフェースのすべてのプロパティは、デフォルトでは必須です。servings を忘れるとエラーになります。プロパティを省略可能にするには、その名前のすぐ後ろにクエスチョンマーク ? を付けます。そうすれば、そのプロパティがあってもなくてもオブジェクトを作れます。
interface Contact {
name: string;
phone: string;
email?: string; // optional thanks to the ?
}
const alice: Contact = {
name: "Alice",
phone: "0601020304",
}; // allowed: email can be omitted