본문 바로가기
언어/TypeScript

type vs interface

by seacode 2025. 4. 16.

Type Aliases

타입 스크립트에서 타입 별칭 사용하기

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

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

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

type User<T> = {
  name: T
}
  • 간단한 자료형부터 인터페이스, 제네릭에도 적용 가능하다.
  • 타입 별칭은 정의한 타입에 대해 나중에 참고하기 쉽도록 별명을 붙이는 작업이다.
  • 그냥 type을 앞에 붙이면 됨.

type alias vs interface

type

  • Aliases 를 위해 앞서 본것 처럼 사용할 수 있다.
    • 나만의 type 을 생성한 뒤 alias 로 타입을 지정해줄 수 있다. (type Developer 처럼..)
    • 즉, type 키워드는 JS 에서 const, let, var.. 와 같은 기능을 수행한다.

interface

  • object 가 따라야하는 규칙을 정의한 일종의 명세서.

⇒ 차이점: 인터페이스는 확장이 가능하고, type alias는 확장이 불가능하다. 따라서 interface 사용이 권장된다. (좋은 소프트웨어는 확장이 용이해야한다)

'언어 > TypeScript' 카테고리의 다른 글

타입 가드  (0) 2025.04.17
Type Assertion (as 사용법)  (0) 2025.04.16
타입 호환성  (0) 2025.04.15
타입 추론  (0) 2025.04.15
제네릭(Generics)  (0) 2025.04.15