프로그래밍/TypeScript
배열의 첫 번째 값을 가리키는 타입
카카수(kakasoo)
2023. 2. 7. 22:17
반응형
type First<T extends any[]> = T['length'] extends 0 ? never : T[0];
type A = First<[3, 2, 1]>; // 3
type B = First<[() => 123, { a: string }]>; // () => 123
type C = First<[]>; // never
어떤 배열 T에 대해 T의 length가 0일 경우에는 어떠한 값도 없어야 하기 때문에 never, 그 외의 경우에는 T의 0번째 값을 반환한다.
타입 치고는 배열을 다루기 때문인지 무척이나 간단한 형태를 띄고 있다.
반응형