언어/TypeScript
infer - 타입 추론하기
calendar2
2024. 10. 17. 17:30
타입을 추론해주는 문법이 존재한다. 아래 코드를 살펴보자.

FuncA와 FuncB라는 메서드 타입 두 개가 존재한다. 그리고 infer 문법을 사용해서 반환 타입을 추출하는 ReturnType을 만들어서, 각각 타입 A, B, C에 반환 타입을 정의해주었다.
C의 경우 T 위치에 메서드 타입이 아닌 원시 타입이 들어가 never 타입이 추출된 것을 볼 수 있다.
infer는 extends와 같이 사용해야 한다. T가 확장될 수 있도록 슈퍼타입이 가능한 타입을 추론해주는 역할이기에 extends infer 추론할 타입(대체로 R)로 작성하여 사용을 해준다.
한 가지 예시를 더 살펴보자.

보면 extends 뒤쪽으로 Promise 타입이 들어오고 해당 Promise에 들어가는 타입이 T의 슈퍼 타입이 되도록 추론하여 반환해주는 형태로 작성한 것을 볼 수 있다.
참고자료
한 입 크기로 잘라먹는 타입스크립트(TypeScript)
한 입 크기로 잘라먹는 타입스크립트(TypeScript) 강의 | 이정환 Winterlood - 인프런
이정환 Winterlood | 문법을 넘어 동작 원리와 개념 이해까지 배워도 배워도 헷갈리는 타입스크립트 이제 제대로 배워보세요! 여러분을 타입스크립트 마법사🧙🏻♀️로 만들어드립니다., 프론
www.inflearn.com