ユーザーアイコン

mizuko

6か月前

0
0

オブジェクトの必須キーだけ取得する

TypeScript

type guardなどで必須キーだけ取得したい場合がある

type RequiredKeys<T> = { [K in keyof T]-?: undefined extends T[K] ? never : K; }[keyof T];

-? オプショナルのキーを除去

undefined extends T[K] ? never : K T[K]の方にundefinedが含まれている場合はneverを返す(キーを除外する)