TypeScript·
62 - Type Lookup
- #Type Challenges
- #TypeScript
질문
때때로 유니온 타입의 특정 속성을 기준으로 조회할 수도 있습니다.
이 챌린지에서는 유니온 타입 Cat | Dog에서 공통으로 사용하는 type 필드를 기준으로 해당하는 타입을 얻고자 합니다. 다시 말해서, 다음 예시에서는 LookUp<Cat | Dog, 'dog'>으로 Dog 타입을, LookUp<Cat | Dog, 'cat'>으로 Cat 타입을 얻을 수 있습니다.
1interface Cat {2type: 'cat'3breeds: 'Abyssinian' | 'Shorthair' | 'Curl' | 'Bengal'4}56interface Dog {7type: 'dog'8breeds: 'Hound' | 'Brittany' | 'Bulldog' | 'Boxer'9color: 'brown' | 'white' | 'black'10}1112type MyDogType = LookUp<Cat | Dog, 'dog'> // 기대되는 결과는 `Dog`입니다.1314