FrontEnd/TypeScript
TypeScript) enum
Bumang
2023. 10. 18. 12:25
특정 숫자에 의미를 부여해서 타입들을 관리하고 싶을 때,
예를 들어 어떤 게임에서 player = 0, staff = 1, manager = 2 이런 식으로 코드를 부여해서 쓰고 싶다고 하자.
이런 상황에서 유용하게 사용할 수 있는게 enum이다.
이걸 자바스크립트에서 쓰려면 이런식으로 사용한다.
// 자바스크립트에서도 통하는 방식
const ADMIN = 0
const READ_ONLY = 1
const AUTHOR = 2
이걸 아래 role에다 넣는게 더 간편할 수 있다. (자바스크립트에도 통하는 방식)
그러나 TS의 enum을 사용하면 조금 더 그룹화된 사용을 할 수 있다. 순서대로 0,1,2,... 식으로 일종의 인덱스가 부여된다.
// 각기 변수를 만들지 않고 통합된 하나의 그룹처럼 쓰는게 enum.
enum Role { // 순서대로
ADMIN, // === 0
READ_ONLY, // === 1
AUTHOR, // === 2
}
특정 숫자 값도 지정할 수 있다.
enum Role { // 특수하게 원하는 수가 있으면 지정 가능하다.
ADMIN = 10,
READ_ONLY = 20,
AUTHOR = 100,
}
// 이렇게 임의의 숫자를 부여할 수 있다.