Open sculove opened 7 years ago
C#, C++, Java에 있는 그 enum 맞습니다. 기본값은 0 부터 시작합니다.
enum StudyType { 스스로, 강제, 지시, 마지못해 }; console.log(StudyType.스스로); // 0 console.log(StudyType.강제); // 1
enum Workday { 월 = 18, 화 = 1842, 수 = 180, 목 = 999 금 = 0 }; console.log(Workday.월); // 18 console.log(Workday.화); // 1842
특이하게 enum은 양방향으로 처리가 가능함.
console.log(StudyType.강제); // 1 console.log(StudyType[1]); // 강제 console.log(Workday.월); // 18 console.log(Workday[18]); // 월
var StudyType; (function (StudyType) { StudyType[StudyType["스스로"] = 0] = "스스로"; StudyType[StudyType["강제"] = 1] = "강제"; StudyType[StudyType["지시"] = 2] = "지시"; StudyType[StudyType["마지못해"] = 3] = "마지못해"; })(StudyType || (StudyType = {})); ;
const enum은 문자열로만 접근이 가능함. 양방향은 안된다. 참고로, 실제 변환된 코드는 enum과 동일하다.
const enum StudyType { 스스로, 강제, 지시, 마지못해 }; console.log(StudyType.스스로); // 0 console.log(StudyType[1]); // error. A const enum member can only be accessed using a string literal.
enum
C#, C++, Java에 있는 그 enum 맞습니다. 기본값은 0 부터 시작합니다.
특이하게 enum은 양방향으로 처리가 가능함.
변환된 코드
const enum
const enum은 문자열로만 접근이 가능함. 양방향은 안된다. 참고로, 실제 변환된 코드는 enum과 동일하다.