[Typescript] enum(열거형) 타입

정혜인·2023년 8월 2일

typescript

목록 보기
9/15

🙋🏻‍♂️ enum (열거형) 타입

: 여러가지 값들에 각각 이름을 부여해 열거해두고 사용하는 타입

아래 코드처럼 role을 숫자로 간단하게 표현할 때, 코드가 많아지면 role:1이 무슨 역할이었는지, 게스트의 role이 어떤 숫자였는지 기억하기 어렵다.

따라서 아래 코드처럼 enum을 사용하여 각 role을 저장해두면 된다.

enum Role {
    ADMIN = 0,
    USER = 1,
    GUEST = 2,
}
const user1 = {
    name: "정혜인",
    role: Role.ADMIN //0: 관리자
}

const user2 = {
    name: "홍길동",
    role: Role.USER //1: 일반 유저
}

const user3 = {
    name: "아무개",
    role: Role.GUEST //2: 게스트
}

결론적으로,

enum 이름 {
	key1 = value1,
    key2 = value2,
    .
    .
    .
    }

로 정의하면,

이름.key1  // -> value1
이름.key2  // -> value2

가 된다.

실제로 직접 console 로 확인해보면 숫자가 자동으로 들어가게 된다.

+ enum은 컴파일 해도 사라지지 않고, js에서 객체로 사용된다.

0개의 댓글