여러가지 관련된 상수값들을 한곳에 모아서 관리할수있게 도와주는 타입
javascript에는 enum타입들이 존재하지않기때문에 타입스크립트에서 자체적으로 제공한다.
javascript
* javascript에서 고정된 상수값을 나타낼때 대문자로 표기
관련된 요일의 상수를 정의하는 경우 서로 연관되어있긴하지만 이것들을 묶을 수 있는 타입이 따로 존재하지않음
최대한 Enum에 가깝게 표현할수 있는 방법↓
freeze 라는 API를 통해 정의할 수 있음
type script
Enum 타입 정의할 경우 첫글자만 대문자로 써줌
Enum에 값을 정하지않으면, 자동으로 0부터 값이 주어지게 됨
0부터 주어지는게 싫으면 첫번째 키에 다른 숫자를 값으로 지정하여 넣어주면되고
그럼 그 숫자로부터 1씩 증가하는 형태로 값이 할당됨
문자열로 값을 설정할 수도 있음. 문자열은 자동으로 할당되지않기때문에 수동으로 다 입력해주어야함
😮하지만 Enum의 사용을 추천하지않는 이유 !
enum으로 설정한 변수에 다른 어떤 숫자도 할당할 수 있기때문
하여 type script 에서는 enum대신 union 타입을 사용하는것이 안전함
union 타입으로 지정된 것들 외에 다른 것을 지정하려고 할 경우, 에러가 나기때문에 지정된 것들만 사용할수 있게 해줌
다른 모바일 클라이언트와 의사소통할 필요가 없다면
대부분의 경우 enum 타입을 union 타입으로 대체하여 사용하는게 좋음
'Type script' 카테고리의 다른 글
type assertion (0) | 2021.04.17 |
---|---|
타입추론 type inference (0) | 2021.04.17 |
Intersection Type (0) | 2021.04.15 |
Union Type (0) | 2021.04.15 |
Type Aliases (0) | 2021.04.15 |
댓글