본문 바로가기
카테고리 없음

TIL

by Node.js 주니어 개발자 귤 2023. 1. 31.

열거형 (Enums)

 

enum 은 enumerated type을 의미합니다.

관련된 상수값들을 집합하여 선언을 하며 TS같은 경우는 숫자와 문자형 기반의 열거형을 지원합니다.

물론 JS로도 상수값을 선언할 수 있지만 TS의 enum을 사용하면:

  1. 상수를 사용할 때 [IDE](https://aws.amazon.com/ko/what-is/ide/#:~:text=통합 개발 환경(IDE)이란,개발자 생산성을 높입니다.)의 코드예측 지원을 받을 수 있습니다
  2. 변경범위가 줄어듭니다

 

 

 

 

제네릭 타입 (Generic Types)

 

제네릭은 선언 시점이 아닌 생성 시점에 타입을 명시하여 하나의 타입만이 아닌 다양한 타입을 사용할 수 있도록 하는 기법입니다.

제네릭을 선언할 때 관용적으로 사용되는 대표적인 식별자로 T가 있고, 그 외에 U와 V가 있습니다. 반드시 T, U, V를 사용하여 하는 것은 아니지만 관용적인 식별자를 쓰는게 모범적입니다.

어떻게 보면 어떤 타입을 전달해도 사용이 가능한 any랑 다른점이 있을지 고민이 될수도 있지만 any는 타입체크를 전혀 하지 않아서 전달받은 데이터의 타입을 알 수 없고 반환할 때 타입의 정보를 반환하지 않습니다. 이런 반면에 제네릭은 전달받은 타입을 확인 및 반환을 할 수 있고 타입을 제한 할 수도 있습니다.

 

 

 

유틸리티 타입 (Utility Types)

 

TypeScript에서 제공해주는 유틸리티 타입이 여러가지 있습니다. 그 중에서 우리가 유용하게 쓸 수 있는 타입이 여러가지가 있는데요, 앞으로 외부 라이브러리에서 불러오는 타입이나 import해올 수 없는 타입들을 조작하여 우리가 원하는 타입으로 변환시키는데에 유용합니다.