[typescript] 타입 추론의 한계를 극복하기 위한 명시적 타입 어노테이션

타입 추론의 한계

타입스크립트는 변수를 선언할 때 초기값을 통해 해당 변수의 타입을 추론합니다. 하지만 타입 추론은 어떤 경우에는 제대로 동작하지 않을 수도 있습니다. 특히 다음과 같은 경우에는 명시적 타입 어노테이션이 필요합니다.

명시적 타입 어노테이션

명시적 타입 어노테이션이란 변수나 함수의 타입을 직접적으로 명시하는 것을 말합니다. 이를 통해 타입 추론의 한계를 극복할 수 있습니다.

변수에 대한 명시적 타입 어노테이션

let myVar: string; // 문자열 타입으로 명시적으로 선언
myVar = "Hello"; // 유효한 문자열 할당
myVar = 123; // 에러: 숫자를 문자열에 할당할 수 없음

함수에 대한 명시적 타입 어노테이션

function greet(name: string): string {
  return "Hello, " + name;
}

명시적 타입 어노테이션을 사용하면 변수나 함수의 타입을 명확하게 지정할 수 있으며, 이를 통해 코드의 가독성과 안정성을 높일 수 있습니다.

꼭 필요한 경우에만 사용

명시적 타입 어노테이션은 필요한 경우에만 사용하는 것이 좋습니다. 타입 추론이 잘 작동하고 있는 경우에는 굳이 명시적 타입 어노테이션을 추가할 필요가 없습니다.

명시적 타입 어노테이션을 사용하여 타입 추론의 한계를 극복하고 코드의 가독성과 안정성을 높일 수 있습니다. 그러나 지나치게 사용할 경우 코드의 복잡성을 증가시킬 수 있으므로 적절한 사용이 필요합니다.

참고 문헌

  1. Official TypeScript Documentation. Type Inference
  2. Basarat, “TypeScript Deep Dive”. Type Inference

typora-copy-images-to: ./asset —