[typescript] 열거형(Enum) 멤버의 값 설정

열거형(Enum)은 관련된 상수들을 그룹화하여 사용하기 편리하게 만들어주는 TypeScript의 강력한 기능 중 하나입니다. 기본적으로, Enum 멤버는 0부터 시작하여 1씩 증가하는 값을 갖지만, 이 값을 명시적으로 설정하거나 다른 값으로 초기화할 수도 있습니다.

이번 포스트에서는 TypeScript에서 Enum 멤버의 값을 설정하는 방법에 대해 자세히 살펴보겠습니다.

기본적인 Enum 선언

가장 기본적인 형태의 Enum을 살펴보겠습니다. 아래 코드는 각 멤버에 대한 초기화 없이 설정된 Enum을 보여줍니다.

enum Direction {
    Up,
    Down,
    Left,
    Right
}

여기서 Direction Enum은 순서대로 0, 1, 2, 3의 값을 가집니다.

Enum 멤버의 값 설정

Enum 멤버의 값은 “멤버이름 = 값” 형태로 설정할 수 있습니다. 이 때, 값은 숫자 또는 문자열이 될 수 있습니다. 아래의 예제는 Enum 멤버에 값들을 명시적으로 설정하는 방법을 보여줍니다.

enum Direction {
    Up = 1,
    Down = 2,
    Left = 3,
    Right = 4
}

// 또는 문자열 값을 할당할 수도 있습니다.
enum LogLevel {
    Error = "ERROR",
    Warning = "WARNING",
    Info = "INFO",
    Debug = "DEBUG"
}

위의 코드에서 Direction Enum은 1, 2, 3, 4의 값을, LogLevel은 각각 “ERROR”, “WARNING”, “INFO”, “DEBUG”의 값을 갖습니다.

열거형 멤버의 초기화

Enum 멤버는 다른 값으로 초기화할 수도 있습니다. 이를 통해 기존 Enum 멤버값에 더하기, 빼기 등의 연산을 수행할 수도 있습니다.

enum FileAccess {
    // 기존 Enum 멤버에 1을 더한 값으로 초기화
    None = 0,
    Read = 1,
    Write = 2,
    ReadWrite = Read + Write,
    // 기존 Enum 멤버에 2를 곱한 값으로 초기화
    Full = 5
}

위의 코드에서 ReadWrite 멤버는 ReadWrite 멤버를 더한 값을 갖게 되고, Full 멤버는 Write 멤버 값에 2를 곱한 값을 가지는 예를 보여줍니다.

결론

TypeScript의 Enum은 각각의 멤버에 값을 명시적으로 설정할 수 있는 유연한 기능을 제공합니다. 이를 통해 Enum이 정수뿐만 아니라 문자열이나 연산을 포함하는 복잡한 값을 가질 수 있게 되며, 이는 다양한 상황에서 유용하게 활용될 수 있습니다.

더 많은 정보는 TypeScript 공식 문서를 참고하시기 바랍니다.

위의 예제 코드에 오류가 있을 수 있으니 주의하시기 바랍니다.