問題一覧に戻る
中級高度な型
問題47: 条件型

条件型(T extends U ? X : Y)を使って、型レベルで条件分岐を行う方法を学びます。型の特性に基づいて異なる型を返すことができ、より柔軟で表現力豊かな型定義が可能になります。

// 条件型の基本
type IsString<T> = T string ? true : false;

type Test1 = IsString<string>;
type Test2 = IsString<number>;

// 実用的な例
type Nullable<T> = T null | undefined ? T : T | null;