특정 값의 집합을 의미하는 데이터 타입
상수의 집합
enum ShoesBrand {
Nike,
NewBalance
}
enum Direction {
Up, // 0
Down, // 1
Left, // 2
Right // 3
}
console.log(Direction.Down) // 1
enum Direction {
Up = 10,
Down, // 11
Left, // 12
Right // 13
}
이넘의 속성 값에 문자열을 연결한 이넘을 의미한다.
숫자형 이넘과는 다르게 모든 속성 값을 다 문자열로 지정해 주어야 한다.
속성 이름과 값을 동일한 문자열로 관리하는 것이 일반적인 규칙이다.
enum Direction {
Up = 'Up',
Down = 'Down',
Left = 'Left',
Right = 'Right'
}
enum Answer {
Yes = 'Yes',
No = 1
}
enum Authorization {
User, // 0
Admin, // 1
SuperAdmin = User + Admin, // 1
God = 'abc'.length // 3
}
이넘을 선언할 때 앞에 const를 붙인 이넘
컴파일 결과물의 코드양을 줄이기 위해 const를 이넘 앞에 붙인다.
const enum logLevel {
Debug = 'Debug',
Info = 'Info',
Error = 'Error'
}
출처: 쉽게 시작하는 타입스크립트