Home [TS] 타입스크립트 첫걸음 4편(타입 별칭)
Post
Cancel

[TS] 타입스크립트 첫걸음 4편(타입 별칭)

[TS] 타입스크립트 첫걸음 4편(타입 별칭)

타입 별칭과 인터페이스의 차이점

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
interface Person {
  name: string;
  age: number;
}

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

// 위 두개가 무엇이 다를까? 마우스를 갖다 대었을 때(프리뷰로 볼때), interface 경우는 그냥 interface 가 뜨고,
// type 으로 하면 {name: string, age: nnumber} 와 같이 구체적으로 뜬다.

let sungrin: Person = {
  name: "성린",
  age: 30,
};

type MyString = string;
let str: MyString = "hello";

type Todo = { id: string; title: string; done: boolean };
function getTodo(todo: Todo) {}
  • 타입별칭과 인터페이스의 가장 큰 차이점은 확장가능 / 불가능 여부이다.

  • 인터페이스는 확장이 가능한데 , 타입별칭은 확장이 불가능하다. 가능한한 type 보다는 interface 로 선언해서 사용하는 것이 좋다.

This post is licensed under CC BY 4.0 by the author.

[TS] 타입스크립트 첫걸음 3편(인덱싱, 확장, 상속)

[TS] 타입스크립트 첫걸음 5편(연산자를 이용한 타입의 정의)