본문 바로가기
Frontend/Typescript

[TypeScript] interface와 type의 차이가 궁금하다!

by 띵킹와이 2023. 10. 26.

interface 와 type 은 타입스크립트에서 타입을 정의하는 방법으로, 둘 다 유사한 기능을 가졌지만 몇 가지 차이가 있다.

  1. 확장성 : interface는 확장이 가능하다. 같은 이름의 interface를 여러 번 선언하면 자동으로 합쳐진다
interface User {
	name: string;
}

interface User {
	age: number;
}

// User = { name : string; age: number; } 가 된다.
  1. 구문 : type은 다양한 구문을 지원한다. 예를 들어 | & 같은 것들이 사용 가능하다.
type User = { name: string; age: number; } | { name: string; };

결론은 개발자의 성향에 따라 다르고 프로젝트의 진행 방향에 따라 유동적으로 사용하면 될 것 같다.