Extract<T, U>
Extract<T, U>
は、ユニオン型T
からU
で指定した型だけを抽出した型を返すユーティリティ型です。
#
Extract<T, U>の型引数#
T型引数T
には、抽出されるほうのユニオン型を渡します。
#
U型引数U
には、抽出したい型を渡します。
#
Extractの使用例typescript
type Grade = "A" | "B" | "C" | "D" | "E";type FailGrade = Extract<Grade, "D" | "E">;//=> "D" | "E"
typescript
type Grade = "A" | "B" | "C" | "D" | "E";type FailGrade = Extract<Grade, "D" | "E">;//=> "D" | "E"
Extractは2つのユニオン型の共通部分を導き出すことにも使えます。
typescript
type CommonTypes = Extract<"a" | "b" | "c", "b" | "c" | "d">;// "b" | "c"
typescript
type CommonTypes = Extract<"a" | "b" | "c", "b" | "c" | "d">;// "b" | "c"