[typescript] 타입 가드를 사용한 객체 타입 추론

타입스크립트(TypeScript)에서는 타입 가드(Type Guard)를 사용하여 조건문을 활용해 변수의 타입을 추론하는 기능을 제공합니다. 이를 통해 조건에 따라 서로 다른 타입으로 변수를 추론할 수 있습니다.

타입 가드란 무엇인가요?

타입 가드는 조건문을 통해 값의 타입을 추론하는 타입스크립트의 강력한 기능입니다. typeof, instanceof, in 등의 키워드를 사용하여 해당 타입을 확인하고, 조건을 만족할 경우 해당 타입으로 변수를 추론할 수 있습니다.

예를 들어, 다음과 같이 typeof를 사용하여 객체의 속성을 확인할 수 있습니다.

interface Circle {
  radius: number;
}

interface Square {
  sideLength: number;
}

function getArea(shape: Circle | Square) {
  if ('radius' in shape) {
    // shape는 Circle 타입으로 추론됨
  } else {
    // shape는 Square 타입으로 추론됨
  }
}

위 예제에서, typeof를 사용하여 shape 객체의 속성을 확인하여 조건에 따라 타입을 추론하는 것을 볼 수 있습니다.

타입 가드를 활용한 객체 타입 추론

타입 가드를 사용하면 조건에 따라 다양한 객체의 타입을 추론할 수 있습니다. 이를 통해 보다 유연하고 안정적인 타입 추론을 할 수 있으며, 코드의 가독성과 유지보수성을 향상시킬 수 있습니다.

타입 가드를 활용하여 조건에 따라 다른 타입으로 객체를 추론하는 방법에 대해 잘 알아두면, 타입스크립트 코드 작성 시 유용하게 활용할 수 있을 것입니다.

결론

타입 가드를 사용하여 객체의 타입을 조건에 따라 추론하는 기능은 타입스크립트의 강력한 기능 중 하나입니다. 이를 활용하면 보다 유연하고 안정적인 코드를 작성할 수 있으며, 타입 추론을 통해 코드의 가독성을 향상시킬 수 있습니다. 타입 가드를 적재적소에 활용하여 객체의 타입을 추론하는 습관을 길러보세요.

참고문헌: https://www.typescriptlang.org/docs/handbook/advanced-types.html#typeof-type-guards