Skip to content

10. 타입 별칭(Type Aliases)


1. 타입 별칭

  • 타입 별칭은 특정 타입이나 인터페이스를 참조할 수 있는 타입 변수를 의미한다.


// string 타입을 사용할 때
const heroName: string = "capt";

// 타입 별칭을 사용할 때
type MyName = string;
const heroName: Myname = "capt";


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


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


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


type User<T> = {
  name: T;
};


2. type vs interface

  • type(타입 별칭)과 interface(인터페이스)의 가장 큰 차이점은 타입의 확장 가능 및 불가능 여부이다.
  • interface는 확장이 가능한데 반해 type은 확장이 불가능하다.
  • 따라서, 가능한 type보다는 interface로 선언해서 사용하도록 한다.

References