[Typescript] 타입스크립트 타입 별칭

problem_hun·2023년 3월 8일
0

타입스크립트

목록 보기
7/16

타입 별칭은 정의한 타입에 대해 나중에 쉽게 참고할 수 있게 이름을 부여하는 것과 같다.

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

type 🔸Person = {
  name: string;
  age: number;
};

var jihu: 🔸Person = {
  name: "지후",
  age: 22,
};

type 🔹MyString = string;
var str: 🔹MyString = "hello";

type 🔘Todo = { id: number; title: string; done: boolean };
function getTodo(todo: 🔘Todo) {}

이는 인터페이스와 굉장히 비슷해보이지만 다른 차이점이 있다.

객체의 속성 타입을 인터페이스로 정의했을 때와 타입 별칭으로 정의했을 때, 커서를 올려 보면 프리뷰로 다르게 나타난다.


그리고 타입 별칭과 인터페이스의 가장 큰 차이점은 타입의 확장 가능 / 불가능 여부다. 인터페이스는 확장이 가능하지만, 타입 별칭은 확장이 불가능하다. 따라서 type 보다는 interface로 선언해서 사용하는 것이 좋다.

profile
문제아

0개의 댓글