
エントリーの編集

エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
TypeScript で再帰的な型を定義する - Qiita
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています

- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
TypeScript で再帰的な型を定義する - Qiita
// tuple を自然に取り扱えるようになった(以前は関数の引数を経由する必要があった) type Head<T> = ... // tuple を自然に取り扱えるようになった(以前は関数の引数を経由する必要があった) type Head<T> = T extends [infer U, ...unknown[]] ? U : never; type Tail<T> = T extends [unknown, ...infer U] ? U : []; // 再帰を自然に記述できるようになった // readonly で as const 相当を強制できるようになった type DeepPath<State, Paths extends readonly unknown[]> = Head<Paths> extends keyof State ? Tail<Paths> extends [] ? State[Head<Paths>] : DeepPath<NonNullable<State[Head<Paths>]