티스토리 뷰
타입추론이란 사용자가 명시적으로 타입을 적어주지 않았을 경우 타입스크립트가 자체적으로 타입을 추론하는 것을 의미 한다. 아래의 예제를 확인해보자.
일반 함수
sum 이라는 함수는 인자값 b와 c의 값을 더하는 함수이다. 잘보면 b는 number이고 c는 string 이다. 자바스크립트를 해보신 분들은 아시겠지만 숫자+문자 = 문자로 반환되게 되어진다. 그러므로 타입스크립트는 b는 숫자라고 인식하고 반환값은 string이라고 사용자가 명시적으로 입력하지 않아도 알아서 추론하게 된다.
인터페이스 제네릭 사용시
제네릭을 사용할 때에도 마찬가지 이다. Dropdown<T>의 경우 T는 선언 당시 어떤 타입인지 알 수가 없다. 아래에서 객체를 생성할 때 number라고 명시적으로 선언을 해주었기 때문에 인터페이스 제네릭의 T는 number라고 추론을 하게 된다.
인터페이스 확장할 때 사용시
value와 tag는 각각 제네릭으로 사용하였지만 extends를 확장하므로서 타입이 정해진다.