メインコンテンツまでスキップ

Extract<T, U>

Extract<T, U>は、ユニオン型TからUで指定した型だけを抽出した型を返すユーティリティ型です。

Extract<T, U>の型引数

T

型引数Tには、抽出されるほうのユニオン型を渡します。

U

型引数Uには、抽出したい型を渡します。

Extractの使用例

ts
type Grade = "A" | "B" | "C" | "D" | "E";
type FailGrade = Extract<Grade, "D" | "E">;
type FailGrade = "D" | "E"
ts
type Grade = "A" | "B" | "C" | "D" | "E";
type FailGrade = Extract<Grade, "D" | "E">;
type FailGrade = "D" | "E"

Extractは2つのユニオン型の共通部分を導き出すことにも使えます。

ts
type CommonTypes = Extract<"a" | "b" | "c", "b" | "c" | "d">;
type CommonTypes = "b" | "c"
ts
type CommonTypes = Extract<"a" | "b" | "c", "b" | "c" | "d">;
type CommonTypes = "b" | "c"

関連情報

📄️ Exclude<T, U>

任意の型を除外する