본문 바로가기

js/TypeScript

TypeScript - 타입 별칭

타입 별칭은 특정 타입이나 인터페이스를 참조할 수 있는 타입 변수를 의미합니다. 예를 들면 아래와 같습니다.

// string 타입을 사용할 때
const name: string = 'capt';

// 타입 별칭을 사용할 때
type MyName = string;
const name: MyName = 'capt';

위와 같이 string, number와 같은 간단한 타입 뿐만 아니라 interface 레벨의 복잡한 타입에도 별칭을 부여할 수 있습니다. 아래 코드와 같이 말이죠.

type Developer = {
  name: string;
  skill: string;
}

타입 별칭에 제네릭도 사용할 수 있습니다.

type User<T> = {
  name: T
}

 

type vs interface

타입 별칭과 인터페이스의 가장 큰 차이점은 타입의 확장 가능 / 불가능 여부입니다. 인터페이스는 확장이 가능한데 반해 타입 별칭은 확장이 불가능합니다. 따라서, 가능한한 type 보다는 interface로 선언해서 사용하는 것을 추천합니다.

'js > TypeScript' 카테고리의 다른 글

TypeScript - 타입 호환  (0) 2022.07.28
TypeScriprt - 타입 추론  (0) 2022.07.28
TypeScript - Generics  (0) 2022.07.27
TypeScript - Class  (0) 2022.07.27
TypeScript - 이넘(Enums)  (0) 2022.07.27