TypeScript28を学ぶ(再帰を推測する)

そういうタイプがある

type Arr = [1, 2, 3, 4]

TSツールを通じてなりたい

type Arr = [4,3,2,1]

完全なコード

type Arr = [1, 2, 3, 4]

type ReveArr<T extends any[]> = T extends [infer First, ...infer rest] ? [...ReveArr<rest>, First] : T

type Res = ReveArr<Arr>

 具体的な考え方は、最初に一般的な制約を使用して、配列型のものだけを渡すことができるように制約し、次に配列から最初のものを抽出し、それを新しい配列の最後に置き、この操作を繰り返して再帰を形成することです。終了条件を満たし、型を返します

おすすめ

転載: blog.csdn.net/qq1195566313/article/details/126449668