타입스크립트 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"
반응형
'Typescript' 카테고리의 다른 글
TS006. 타입스크립트 타입 캐스팅 및 주의점 (0) | 2023.12.27 |
---|---|
TS005. 타입스크립트의 타입 추론 (type inference) (0) | 2023.12.27 |
TS003. 타입과 인터페이스 (0) | 2023.12.27 |
TS002. 자바스크립트의 기본(Primitive) 타입과 타입스크립트에만 있는 타입 (0) | 2023.12.26 |
TS001. 자바스크립트 -> 타입스크립트 변경 시 이점 (0) | 2023.12.26 |