logweft.

TS-L3-031 / 튜플 타입 연산

튜플 첫 원소

중급

문제

First<T>가 비어 있지 않은 readonly 튜플의 첫 원소, 빈 튜플은 never가 되게 정의하세요.

요구한 타입·변수 이름을 유지하세요. 각 타입 계약이 컴파일되는지를 확인합니다. 코드를 실행하는 문제는 아닙니다.

타입 계약

첫 타입
type Check = Expect<Equal<First<readonly ["a",2]>, "a">>;
빈 튜플
type Check = Expect<Equal<First<[]>, never>>;
힌트

튜플을 첫 원소와 나머지로 패턴 매칭하세요.

해설·정답 보기

단순 인덱스 접근과 달리 빈 튜플의 결과를 명시적으로 never로 정의합니다.

type First<T extends readonly unknown[]> = T extends readonly [infer H,...unknown[]] ? H : never;
모르는 문법은 코드 사전에서 ↗
answer.ts타입 확인

코드는 이 브라우저에 자동 저장돼요.

풀이 결과

코드를 작성하고 채점하기를 눌러보세요.

    학습용으로 제공된 조건을 확인해요. 알고리즘 사용 방식·설계 의도는 해설과 함께 비교해보세요.

    어떤 기록을 찾으세요?

    키워드를 입력하면 기록을 찾아드려요.