타입스크립트 Enum
- JS 에서는 enum 이 존재하지 않음
- enum 을 대체하기 위해 일반 상수에 문자열을 넣는 방식으로 코드를 짜왔음
JS 에서 Enum 을 흉내내어 사용하던 방식
- 아래와 같이 특정 문자열에 대응되는 상수를 작성해놓으면 자동완성으로 오타없이 쉽게 이용이 가능
const REQUEST_STATE = "REQUEST";
const LOADING_STATE = "LOADING";
const DONE_STATE = "DONE";
const ERROR_STATE = "ERROR";
TS 에서 Enum 을 사용하는 방식
interface 와 흡사하게 선언함
= 없이 선언
- 아래와 같이 선언 시에 ts 컴파일 이후에는 숫자가 0부터 차례대로 들어감
enum State {
REQUEST,
LOADING,
DONE,
ERROR,
}
console.log(State.REQUEST); // 0
- 아래와 같이 실제 대응되어야 할 문자열을 입력하면 enum 이 컴파일 후에도 해당 값을 갖게 됨
enum State {
REQUEST = "REQUEST",
LOADING = "LOADING",
DONE = "DONE",
ERROR = "ERROR",
}
console.log(State.REQUEST); // "REQUEST"