이번에는 plus 함수의 매개변수에 타입을 표기해보겠습니다.
function plus(x: number, y: number) {
return x + y;
}
// function number(x: number, y: number): number
plus 함수의 반환값이 number로 추론되어 있는 것이 보입니다. x도 number이고 y도 number이니 x + y도 number일 것입니다. 따라서 반환값이 number로 추론되는 것이죠.
타입스크립트가 타입을 제대로 추론할 때도 있고 틀리게 추론할 때도 있는 것 같은데, 타입스크립트의 추론을 어느 정도로 믿어야 할까요? 타입스크립트의 추론을 활용하기보다는 그냥 모든 변수, 매개변수, 반환값에 타입을 표기하는 게 낫지 않을까요?
타입스크립트의 추론을 활용할까 말까 고민하던 중, 저는 타입스크립트를 사용할 때 다음과 같은 한 가지 원칙을 세웠습니다.
타입스크립트가 타입을 제대로 추론하면 그대로 쓰고, 틀리게 추론할 때만 올바른 타입을 표기한다.