問題一覧に戻る
中級高度な型
問題39: NonNullable'<'T'>'

NonNullable'<'T'>'ユーティリティ型を使って、型からnullとundefinedを除外する方法を学びます。nullやundefinedを許可しない厳密な型を作成できます。

// null許容型
type NullableString = string | null | undefined;

// NonNullable型の使用
type NonNullString = <NullableString>;

const message: NonNullString = "Hello TypeScript";

// NonNullable型を返す関数
function processValue<T>(value: T): <T> {
if (value === null || value === undefined) {
throw new Error("Value cannot be null or undefined");
}
return value;
}