재밌고 어려운 IT를 이해해보자~!
열거형(Enums) 본문
Enum
Enum은 그 안에 무슨 값들을 열거했냐에 따라서 Numeric enums, String enums 등으로 불리기도 하는데, 보통 상수들의 집합을 정의하고자 할 때 주로 사용되고는 한다.
숫자 열거형 (Numeric enums)
enum Weekdays {
Monday,
Tuesday,
Wednesday,
Thursday = 10,
Friday,
Saturday,
Sunday,
}
let day: Weekdays = Weekdays.Thursday;
console.log(day);
console.log(Weekdays.Friday);
보통 enum은 위와 같이 사용하고는 하는데, 왜 저게 숫자 열거형이냐 하면 따로 특정한 값이 주어지지 않으면 자동적으로 0부터 숫자가 할당되기 때문
Moday = 0, Tuesday = 1, Wednesday = 2....
그렇다면 Thursday에서 10을 지정해줬는데 여기서 Friday는 초기값을 기준으로 다시 1씩 증가하기 때문에 Friday = 11이 된다. 그 이후 역시 1씩 증가한 값이 할당된다.
문자 열거형 (String enums)
enum Codes {
CD0001 = '퇴사',
CD0002 = '이직',
CD0003 = '취업',
CD0004 = '취준',
CD0005 = '백수',
CD0006 = '코코',
}
let code: Codes = Codes['CD0001'];
code = Codes.CD0003;
하지만 굳이 상수를 관리한다고 enum을 사용하고자 한다면 숫자 열거형 말고 문자 열거형을 사용하는 것이 좋고,
그래도 enum보다는 그냥 class로 상수를 관리하는 게 더욱더 좋다.
class AppCode {
static readonly CD0001 = "1상수입니다.";
static readonly CD0002 = "2상수입니다.";
static readonly MAX_LENGTH = 5;
}
let appCode = AppCode.CD0002;
'TypeScirpt' 카테고리의 다른 글
클래스(Class) (0) | 2024.10.08 |
---|---|
타입추론(Type Inference), 타입표명(Type Assertion) (0) | 2024.10.07 |
타입 별칭과 문자열 리터럴 (Type Alias, String Literal) (0) | 2024.10.06 |
객체타입 - object, array, tupple (0) | 2024.10.06 |
기본타입 (0) | 2024.10.05 |
Comments