그런 유형이 있습니다
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>
구체적인 아이디어는 먼저 일반 제약 조건을 사용하여 배열 유형의 항목만 전달할 수 있도록 제한한 다음 배열에서 첫 번째 항목을 추출하여 새 배열의 끝에 넣고 이 작업을 반복하여 재귀를 형성하는 것입니다. 종료 조건을 충족하고 유형을 반환합니다.