TypeScript·
11 - Tuple to Object
- #Type Challenges
- #TypeScript
질문
배열(튜플)을 받아, 각 원소의 값을 key/value로 갖는 오브젝트 타입을 반환하는 타입을 구현하세요.
예시:
1const tuple = ['tesla', 'model 3', 'model X', 'model Y'] as const23type result = TupleToObject<typeof tuple>4// expected { 'tesla': 'tesla', 'model 3': 'model 3', 'model X': 'model X', 'model Y': 'model Y'}56
선행 지식
-
as const1const tuple = ['tesla', 'model 3'] as const튜플의 길이와 순서가 고정되어 각 원소를 유니온 타입으로 추출 가능해진다.
-
배열의 원소 접근
1type T = ['a', 'b', 'c']2type U = T[number] // 'a' | 'b' | 'c'배열의 원소는
[number]를 사용하여 꺼내올 수 있다. 이 때 모든 배열 요소의 유니온 타입으로 추출된다.