TypeScript에서 Enum을 사용할 필요가 없나요? 【논의】
나는 최근에 Enums을 사용하는 것에 대해 생각하고 있으며 가능한 한 Enum을 사용하지 말아야 한다는 결론을 내렸습니다.
하지만 왜?
열거형은 컴파일된 JavaScript 파일에 영향을 미칩니다.
일반적으로tsc
명령은 다음과 같은 모든 TypeScript 고유 항목을 제거합니다.
이것은 TypeScript가 컴파일된 JavaScript 파일에 아무런 영향을 미치지 않는다는 것을 의미합니다.
반면 TypeScript는 Enums를 사용하는 경우 JS 파일에 약간의 영향을 미칩니다.
그것들을 비교해 봅시다!
사례 1: 유니온 유형
타입스크립트
type BigTechz = "Google" | "Apple" | "Amazon";
const myFav: BigTechz = "Apple";
이후 자바스크립트
tsc
"use strict";
const myFav = "Apple";
사례 2: 열거형
enum BigTechz {
Google = "Google",
Apple = "Apple",
Amazon = "Amazon",
}
const myFav: BigTechz = BigTechz.Apple;
이후 자바스크립트
tsc
"use strict";
var BigTechz;
(function (BigTechz) {
BigTechz["Google"] = "Google";
BigTechz["Apple"] = "Apple";
BigTechz["Amazon"] = "Amazon";
})(BigTechz || (BigTechz = {}));
const myFav = BigTechz.Apple;
내 생각
위에서 볼 수 있듯이 Enums는 자바스크립트 파일에 개체로 남아 있어 번들 크기가 더 커집니다.
그리고 더 중요한 것은 TypeScript가 컴파일된 JavaScript 파일에 어떤 영향도 미치지 않아야 한다고 생각합니다.
TypeScript는 코드를 작성할 때와 tsc
명령으로 TS 파일을 컴파일할 때 기본적으로 유형 검사기입니다.
대부분의 경우 Enums 대신 다른 TS 구문을 사용할 수 있으며 가능하면 그렇게 해야 한다고 생각합니다(어쩌면 저는 Union 유형을 선호합니다🙄)!
이 주제에 대한 다른 개발자들의 의견을 듣고 싶습니다. 댓글을 남겨주시면 감사하겠습니다!
감사!
Reference
이 문제에 관하여(TypeScript에서 Enum을 사용할 필요가 없나요? 【논의】), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/taishi/we-shouldnt-use-enums-on-typescript-anymore-18d3
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(TypeScript에서 Enum을 사용할 필요가 없나요? 【논의】), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/taishi/we-shouldnt-use-enums-on-typescript-anymore-18d3텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)