[TypeScript] 인터페이스

kjy0124·2026년 2월 27일
post-thumbnail

🎯 인터페이스

✅ 정의

  • 타입에 이름을 정해주는 것
  • 객체에 구조를 정의해주는데 특화된 문법(상속 & 합침 등의 특수한 기능을 제공)

✅ 사용방법

interface Person {
  name: string;
  age: number;
  // func(): void;
  func: () => void;
}

const person: Person = {
  name: "kjy",
  age: 27,
  func: function () {
    console.log("func");
  },
};
  • 위 코드에서는 함수도 화살표함수 방식으로 사용 가능하며,
    func(): void;로도 사용이 가능하다.
  • 그리고 아래 코드와 같이 호출 시그니처 방식도 사용이 가능
func(): void;
func(a: number, b: number): void;
  • 아래는 인터페이스타입지정 방식 비교 코드이다.
/**
 * 인터페이스
 */

interface Person {
  name: string;
  age: number;
  // func(): void;
  func: () => void;
}

const person: Person = {
  name: "kjy",
  age: 27,
  func: function () {
    console.log("func");
  },
};

type Func2 = () => void;

const func2: Func2 = () => {
  console.log(func2);
};

✅ 차이점

1️⃣ 타입 별칭

  • 유니온 타입과 인터섹션 타입 생성기능
type Type1 = string | number;
type Type2 = string & number;

2️⃣ 인터페이스

  • 유니온 타입과 인터섹션 타입 생성 불가능

출처

한 입 크기로 잘라먹는 타입스크립트
https://www.inflearn.com/course/한입-크기-타입스크립트/dashboard

profile
개발 공부...

0개의 댓글