ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • . enum과 object literal
    카테고리 없음 2023. 12. 19. 19:53

    ENUM 복습

     

    이넘은 열거형 데이터 타입

     

    상수의 그룹화를 위해선 이넘이 아주 좋은 타입

     

    코드의 가독성이 높아지고 명확한 상수값을 정의할 수 있다.

     

    또한, 컴파일시 자동으로 숫자로 매핑되므로 따로 값을 할 당할 필요없다.

     

    enum UserRole {
      ADMIN = "ADMIN",
      EDITOR = "EDITOR",
      USER = "USER",
    }

    enum UserLevel {
      NOT_OPERATOR, // 0
      OPERATOR // 1
    }

    function checkPermission(userRole: UserRole, userLevel: UserLevel): void {
      if (userLevel === UserLevel.NOT_OPERATOR) {
        console.log('당신은 일반 사용자 레벨이에요');
      } else {
        console.log('당신은 운영자 레벨이군요');
      } 

      if (userRole === UserRole.ADMIN) {
        console.log("당신은 어드민이군요");
      } else if (userRole === UserRole.EDITOR) {
        console.log("당신은 에디터에요");
      } else {
        console.log("당신은 사용자군요");
      }
    }

    const userRole: UserRole = UserRole.EDITOR;
    const userLevel: UserLevel = UserLevel.NOT_OPERATOR;
    checkPermission(userRole, userLevel);


    object literal

     

    옵잭트 리터럴의 예시

     

    const obj = {
      a: [1,2,3],
      b: 'b',
      c: 4
    }

     

    이넘과 흡사해 보이지만 CONST /LET을 사용가능하지만

     

    키 + 쌍으로 구성된 객체를 정의하는 방식


      언제 이넘을 쓰고 언제 옵잭트 리터럴을 쓸까

     

    이넘은 다수의 상수값을 쓸 때 쓴다.

     

    옵잭트는 객체에 다양한 쌍의  키와 밸류을 사용할 때 쓰면 좋다. 

Designed by Tistory.