타입스크립트 - Enum

jihyo·2023년 9월 2일
0
post-thumbnail

Enum은 상수 집합으로도 불리는 특정 값의 집합을 의미하는 데이터 타입이다. 예를 들어,

enum Fruits {
  Apple,
  Banana,
  Kiwi
}

let fruit1 = Fruits.Apple;
let fruit2 = Fruits.Banana;

console.log(fruit1);
console.log(fruit2);

객체의 속성에 접근하듯 사용한다. 그렇다면 fruitfruit2에는 어떤 값이 들어갈까? 위 코드의 결과를 확인해보면 0과 1이 나오는 것을 알 수 있다.

1. Enum 실행 결과

숫자형 Enum

Enum에 선언된 속성은 기본적으로 숫자 값을 가진다.

enum Fruits {
  Apple,  // 0
  Banana, // 1
  Kiwi,   // 2
  Grape,  // 3

타입스크립트의 내부적인 특징 때문에 0부터 1씩 증가하는 숫자를 가진다. 만약, Apple에 10을 할당하게 되면 10부터 1씩 증가하게 된다.

문자형 Enum

문자형 Enum은 말 그대로 문자열을 연결한 것으로 자동으로 지정되는 숫자형과 달리 직접 모든 속성값에 지정해야 한다.

enum Direction {
  Up = 'Up',
  Down = 'Down',
  Left = 'Left',
  Right = 'Right'
}

문자형 Enum은 숫자형과 비교했을 때 직접 지정해야 하는 번거로움이 있지만 직관적이라는 장점이 있다.

0개의 댓글