본문 바로가기
반응형

enum2

실제 작동하는 Javascript를 무겁게 만드는 enum과 그 대안 : as const를 활용한 객체 Typescript에서 Javascript으로 변환되는 과정 TS를 컴파일하여 JS를 만드는데, 이 컴파일 과정에서 타입스크립트는 타입체크를 하게 된다. 컴파일과정에서 타입체크가 끝나면 타입과 타입연산자는 제거되면서 런타임과 런타임 성능에 영향을 주지 않는다. 그런데 enum의 경우 TS에서 자체 제공하는 기능이고 JS에서는 없는 개념이다. 컴파일과정에서 JS에 없는 enum을 구현하기 위해 타입체크를 위한 추가 코드를 생성한다. ( 참고 ) 그리고 이렇게 만들어진 추가 코드는 타입이 아니기 때문에 제거되지 않은채로 js로 변환된다. 즉, 어플리케이션 로직에는 영향을 주지 않는 오로지 타입체크만을 위한 JS코드가 생기게 되는 것이다 -> 불필요한 코드를 생성한 후 어플리케이션이 실행됨 const enum.. 2023. 2. 19.
Enum 회사에서 프로젝트를 진행하며 Enum을 사용하고 있다. 사실 Enum에 대해서 잘 모른채로 그냥 기존 코드를 복붙하는 식으로 사용하고 있었다. 아래 이어지는 글은 타입스크립트 공식문서 Enum부분 과 다른 블로그 글들을 보고 정리하는짜집기한 글이다. Enum Enum을 사용하면 맥락이나 케이스를 더 명료하게 만들 수 있다. 타입스크립트에서는 number,string에 기반한 Enum을 제공한다. 숫자형 Enum enum Direction { Up = 1, Down, Left, Right, } 위 경우에서 Up = 1, Down = 2, Left = 3, Right =4 이다. Up = 1 로 시작하고, 그 이후 따라오는 값들은 'auto-incremented' 한 성질(자동증가) 을 갖는다. enum D.. 2022. 5. 6.
반응형