[typescript] 열거형(Enum)을 활용한 타입 추론(Type Inference)

TypeScript는 JavaScript의 확장된 기능을 제공하여 정적 타입 언어로써 많은 이점을 가지고 있습니다. 그 중 하나가 열거형(Enum)을 활용한 타입 추론(Type Inference)입니다. 열거형은 관련된 상수들을 한 곳에 모아 정의할 수 있는 강력한 도구입니다.

이번 글에서는 TypeScript의 열거형을 어떻게 활용하여 타입 추론을 하는지에 대해 살펴보겠습니다.

Enum이란?

열거형(Enum)은 관련된 상수들을 하나의 이름으로 정의할 수 있는 TypeScript의 기능입니다. 코드를 읽기 쉽고 유지보수하기 쉽도록 상수들을 논리적인 그룹으로 묶어줍니다.

다음은 간단한 예시입니다.

enum Direction {
  Up = 'UP',
  Down = 'DOWN',
  Left = 'LEFT',
  Right = 'RIGHT',
}

위 코드에서 Direction이라는 열거형은 Up, Down, Left, Right라는 네 개의 멤버를 가지고 있습니다.

Enum과 함께하는 타입 추론

TypeScript는 열거형을 활용하여 해당 값의 타입을 추론할 수 있습니다. 예를 들어, 다음 코드를 살펴봅시다.

enum Direction {
  Up = 'UP',
  Down = 'DOWN',
  Left = 'LEFT',
  Right = 'RIGHT',
}

let playerDirection = Direction.Left;

여기서 playerDirection 변수는 Direction 열거형의 멤버 중 하나인 Left로 할당되었습니다. 이를 통해 TypeScript는 playerDirection의 타입을 Direction으로 추론하게 됩니다. 따라서, playerDirectionDirection 열거형의 멤버 중 하나만을 가질 수 있습니다.

결론

TypeScript의 Enum을 활용하면 코드를 읽기 쉽고 유지보수하기 쉽게 만들어줄 뿐만 아니라, 타입 추론을 통해 변수의 타입을 명시하지 않아도 타입 안정성을 유지할 수 있습니다.

더 많은 TypeScript의 기능과 활용법을 알고 싶다면, TypeScript 공식 문서를 참고해보세요.