TypeScript의 **열거형(Enums)**은 상수 값을 하나의 그룹으로 정의할 때 사용됩니다.

이번 글에서는 숫자, 문자열, 혼합 열거형컴파일 최적화 기법까지 정리해보겠습니다.


숫자 열거형 (Numeric Enums)

📌 기본적으로 0부터 시작하며, 1씩 자동 증가합니다.

enum Direction {
  Up,    // 0
  Down,  // 1
  Left,  // 2
  Right  // 3
}

let dir: Direction = Direction.Up;
console.log(dir); // 0
enum StatusCode {
  Success = 200,
  NotFound = 404,
  InternalServerError = 500
}

console.log(StatusCode.NotFound); // 404


문자열 열거형 (String Enums)

📌 열거형 값을 문자열로 정의할 수도 있습니다.

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

let dir: Direction = Direction.Up;
console.log(dir); // "UP"

💡 장점: 디버깅 시 숫자보다 의미 있는 값으로 로그를 확인할 수 있음