본문 바로가기

카테고리 없음

Type Annotation vs Type Inference

반응형

타입스크립트 에서 타입을 지정할 때 쓰는 2가지 방법으로서 

 

Type Inference는 형식추론이라고도 불리며 직접 타입을 지정하지 않아도 저장된 값에 따라 형식이 자동으로 저장되는 것을 말한다. 

 

let banana = 5;  // 따로 타입 지정 xx
banana = 'yammy';  // 마우스 호버시

 

 

보면 처음에 number 형태의 값이 저장되었는데 후에 string 으로 대체하려 하니 타입이 맞지 않아 에러가 뜬 모습이다. 

이처럼 따로 타입 지정없이 컴파일러가 초기에 저장된 값으로 타입을 지정하는게 type inference 이다. 

 

 

 

Type Annotation은 직접 타입을 부여하는 방식인데 

 

let apples : number = 5;
apples = 'not yammy';

 

이런 식으로 직접 number, string 등등 타입을 지정해주는 방식을 뜻한다. 

 

 

간단히 타입의 표시 방법 2가지에 대해 알아봣는데 Type Inference는 형식추론의 말대로 컴파일러가 값을 보고 추론하는 단계가 필요하기 때문에 코드의 양이 많아지거나 큰 프로젝트에서는 컴파일하는 시간에 차이가 날 수 있다. 

 

 

 

 

 

반응형