← TypeScript コース
42. デフォルト型引数 — 型引数に既定値を持たせる
ジェネリックな型や関数の型引数には、= で既定値を指定できます。type Box<T = string> と書くと、Box とだけ書いたときは T が string とみなされ、Box<number> のように明示すればそちらが使われます。関数の引数にデフォルト値を持たせるのと同じ発想を、型の世界で行うものです。
実務では「ほとんどの場合はこの型でよいが、必要なら差し替えたい」という型定義で便利です。よく使う型を既定にしておけば、利用側は型引数を省略でき、特別なときだけ指定すればよくなります。ライブラリの型定義などで頻繁に見かけます。
下のコードは、デフォルト型引数を持つ入れ物の型を、省略した場合と明示した場合の両方で使う例です。省略時に既定の型が効いている様子を確かめてください。
▶ サンプルコードを実行してみよう(自由に書き換えてOK)
TypeScript