ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • TypeScript에서 인터페이스와 타입의 사용방법과 차이점
    Javascript 2023. 3. 16. 01:09

    인터페이스(Interfaces)

    인터페이스는 TypeScript에서 객체의 타입을 정의하는 방법 중 하나입니다. 인터페이스는 객체가 가져야 할 프로퍼티, 메소드 등의 구조를 정의합니다.

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

    위의 예제에서 Person 인터페이스는 nameage라는 두 개의 프로퍼티와 greet라는 메소드를 가져야 함을 정의합니다. 이제 Person 인터페이스를 사용하여 해당 구조를 가진 객체를 만들 수 있습니다.

    const person: Person = {
      name: 'John',
      age: 30,
      greet: () => console.log('Hello!')
    };

    인터페이스는 상속이 가능하며, 클래스에서도 사용될 수 있습니다.

    타입(Types)

    타입은 TypeScript에서 객체, 변수, 함수 등의 타입을 정의하는 방법 중 하나입니다. 타입은 인터페이스와 유사한 목적을 가지고 있지만 더 다양한 형태의 타입을 정의할 수 있습니다.

    type Person = {
      name: string;
      age: number;
      greet: () => void;
    };

    위의 예제에서 Person 타입은 nameage 라는 두 개의 프로퍼티와 greet 라는 메소드를 가져야 함을 정의합니다. 인터페이스와 마찬가지로 해당 구조를 가진 객체를 만들 수 있습니다.

    const person: Person = {
      name: 'John',
      age: 30,
      greet: () => console.log('Hello!')
    };

    타입은 인터페이스와 다르게 유니온 타입, 인터섹션 타입, 리터럴 타입 등 다양한 형태로 정의될 수 있습니다.

    인터페이스와 타입의 차이점

    • 인터페이스는 상속이 가능하지만, 타입은 불가능합니다.
    • 인터페이스는 주로 객체의 구조를 정의하는 데 사용되지만, 타입은 다양한 형태의 타입을 정의하는 데 사용됩니다.
    • 인터페이스는 주로 외부 라이브러리나 모듈에서 가져오는 타입을 정의하는 데 사용되지만, 타입은 주로 내부 코드에서 사용됩니다.

    'Javascript' 카테고리의 다른 글

    자바스크립트 익명함수 즉시실행함수 차이  (0) 2019.03.20

    댓글

Designed by Tistory.