kakasoo

배열의 첫 번째 값을 가리키는 타입 본문

프로그래밍/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번째 값을 반환한다.

타입 치고는 배열을 다루기 때문인지 무척이나 간단한 형태를 띄고 있다.

반응형