1. 조건을 만족하는 IsProductKey 타입 완성
IsProductKey 타입
- T가 Product의 key 중 하나일 경우 결과는 true 타입
- T가 Product의 key 중 하나가 아닐 경우 결과는 false 타입
interface Product { id: number; name: string; price: number; seller: { id: number; name: string; company: string; }; } type IsProductKey<T> = any;
type IsProductKey<T> = T extends keyof Product ? true: false;
2. 조건을 만족하는 Extract<T, U> 타입 구현
Extract<T, U>
- T로부터 U만 추출하는 타입
type Extract<T, U> = any;
type Extract<T, U> = T extends U ? T : never;
3. 배열 타입의 요소를 추출하는 InferArrayType 타입 구현
type InferArrayType<T> = any;
type InferArrayType<T> = T extends (infer R)[] ? R : never;
'TIL' 카테고리의 다른 글
| [CS50] C 언어 - 문자열 (0) | 2025.11.05 |
|---|---|
| [CS50] C 기초 (0) | 2025.11.05 |
| [TS] infer (타입 추론) (0) | 2025.11.05 |
| [TS] 분산적인 조건부 타입 (0) | 2025.11.05 |
| [TS] 타입 조작 및 고급 타입 활용 연습 (0) | 2025.11.05 |
