열거형(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
멤버는 Read
와 Write
멤버를 더한 값을 갖게 되고, Full
멤버는 Write
멤버 값에 2를 곱한 값을 가지는 예를 보여줍니다.
결론
TypeScript의 Enum은 각각의 멤버에 값을 명시적으로 설정할 수 있는 유연한 기능을 제공합니다. 이를 통해 Enum이 정수뿐만 아니라 문자열이나 연산을 포함하는 복잡한 값을 가질 수 있게 되며, 이는 다양한 상황에서 유용하게 활용될 수 있습니다.
더 많은 정보는 TypeScript 공식 문서를 참고하시기 바랍니다.
위의 예제 코드에 오류가 있을 수 있으니 주의하시기 바랍니다.