반응형
0. 문제
배열 T를 사용하고 마지막 요소를 반환하는 제네릭 Last<T>
를 구현합니다.
1. 설명
/* _____________ 여기에 코드 입력 _____________ */
type Last<T extends any[]> = [any, ...T][T['length']]
type tt = Last<[3, 2, 1]>
/* _____________ 테스트 케이스 _____________ */
import type { Equal, Expect } from '@type-challenges/utils'
type cases = [
Expect<Equal<Last<[2]>, 2>>,
Expect<Equal<Last<[3, 2, 1]>, 1>>,
Expect<Equal<Last<[() => 123, { a: string }]>, { a: string }>>,
]
T['length']
=> 배열 T의 길이를 구하기
길이는 하나가 더 구해지니까 앞에 any 넣기
반응형
'✍ 공부 > TypeScript' 카테고리의 다른 글
[type-challenges] Type Lookup (0) | 2023.06.06 |
---|---|
[type-challenges] POP (0) | 2023.06.06 |
[type-challenges] Tuple to Union (0) | 2023.05.30 |
[type-challenges] Deep Readonly (0) | 2023.05.30 |
[type-challenges] Parameters (0) | 2023.05.23 |