이정환 님의 한 입 크기로 잘라먹는 타입스크립트 를 수강한 내용 입니다.
Enum 타입
열거형 타입이라고도 부르며 자바스크립트에는 존재하지 않고
- 타입스크립트에서만 사용이 가능한 문법 입니다.
언제 사용하면 좋을까?
먼저 다음과 같은 객체가 있다고 봐봅시다.
유저의 권한을 부여할 때 숫자를 종종 사용하곤 하는데 하지만 숫자로 권한을 설정해준 다음에 개발을 진행하다보면 헷갈려서 실수하는 경우가 생깁니다.
이런 경우 Enum을 활용하면 효율적으로 실수를 방지 할 수 있습니다.
Enum 사용
타입 별칭과 비슷하게 enum 명칭 {}
형식으로 선언 합니다.
enum의 각 멤버에는 다음과 같이 숫자(or 값) 를 할당할 수 있습니다.
위와 같이 만들고 enum의 값을 할당 합니다.
유저의 권한과 같은 여러 개의 멤버를 갖는 값을 숫자로 표기할 때 enum을 이용해 보다 안전하고 직관적으로 관리할 수 있습니다.
숫자 값을 할당하지 않아도 늘어난다 ?
enum 멤버에 숫자 값을 직접 할당하지 않아도 0 부터 1씩 늘어나는 값으로 자동
으로 할당 됩니다.
자동 할당되는 값은 0부터 시작하기 때문에
이 값을 변경하고 싶다면
시작하는 위치에 값을 직접 할당
하면 됩니다.
문자열 Enum
Enum에 숫자 말고 문자열 값도 할당 할 수 있습니다.
Enum은 컴파일 결과 객체로 남는다.
enum은 컴파일될 때 다른 타입들 처럼 사라지지 않고 자바스크립트 객체로 변환 됩니다.
- 따라서 위에서 했던 것 처럼
값으로 사용
할 수 있는 것 입니다.