Union型 とは
| (縦棒) を使って、「A または B」という複数の型のいずれかを許容する指定方法です。
let id: number | string;
id = 101; // OK
id = "p-101"; // OK
// id = true; // エラー:booleanは許可されていない
なぜ嬉しいのか?
「基本は数値だけど、例外的に文字列も入る」といったJavaScriptらしい柔軟性を保ちつつ、意図しない型(例:真偽値など)が混入するのを防げます。
[!TIP]
実務では「データがあるか、空(null)か」を表現する際によく使われます。
name: string | null
要約
- 柔軟性と安全性: 候補を絞ることで、安全に複数の型を扱える。
- 絞り込み: Union型を使うと、後続の処理で「今はどちらの型か」を判定する(絞り込む)必要が出てきます。