• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

enum vs as const

22.08.05 21:34 작성 조회수 263

2

실제 서비스를 만드시면서 enum을 많이 사용하시나요? enum보다 as const로 사용하는 것이 훨씬 좋다는 글을 봐서 여쭤봅니다.

const phoneType = ['home', 'office', 'studio'] as const;

type PhoneType = typeof phoneType[number];

이렇게도 쓸 수 있을 거 같은데 실무에서 어떤 방법을 더 선호하시나요?

 

 

그리고 이렇게 만든 경우에 interface는 [phone: PhoneType] : {} 이렇게 작성할 경우 오류가 뜨는데, interface를 만들 때 key를 string으로 넓게 잡는 것이 아니라 원하는 문자열만 될 수 있도록 범위를 좁히는 방법이 있나요? (아래처럼 사용하고 싶어서요)

type PhoneNumberDictionary {
[phone in PhoneType]: {
num: number;
};
}

 

위처럼 코드를 작성할 경우 아래와 같은 에러가 발생합니다ㅠㅠ

답변 2

·

답변을 작성해보세요.

0

fffvvv님의 프로필

fffvvv

질문자

2022.08.13

https://engineering.linecorp.com/ko/blog/typescript-enum-tree-shaking/
이런 글을 봤었어서 혹시 현업에선 어떻게 사용하고 계시는지 궁금하여 여쭤봤습니다!

아래 문제는 해결했습니다~!

0

안녕하세요, 좋은 질문이네요. 이넘보다 as const가 좋다는게 어떤 부분인가요? 자료 공유해 주시면 저도 봐볼게요. 본문에 첨부해 주신 코드는 전체를 올려주셔야 도와드릴 수 있을 것 같아요 :)