[typescript] 인터페이스와 유니온 타입을 활용하여 다중 타입의 객체 선언 방법을 알려주세요.

TypeScript에서 다중 타입의 객체를 선언하는 방법은 인터페이스유니온 타입을 활용하는 것입니다. 이 두 가지를 조합하여 다양한 타입을 가지는 객체를 정의할 수 있습니다.

1. 인터페이스를 활용한 다중 타입 객체 선언

인터페이스는 다른 타입으로 구현될 수 있는 구조를 정의합니다. 여러 가지 타입이 포함된 객체를 선언할 때 유용하게 활용될 수 있습니다. 아래는 인터페이스를 사용하여 다중 타입의 객체를 선언하는 예제입니다.

interface Car {
  brand: string;
  model: string;
  year: number;
}

interface Plane {
  manufacturer: string;
  model: string;
  passengerCapacity: number;
}

// 다중 타입의 객체 선언
let vehicle: Car | Plane;

vehicle = { brand: 'Tesla', model: 'Model S', year: 2021 }; // Car 타입
vehicle = { manufacturer: 'Boeing', model: '747', passengerCapacity: 416 }; // Plane 타입

2. 유니온 타입을 활용한 다중 타입 객체 선언

유니온 타입은 여러 타입 중 하나가 될 수 있는 값을 나타냅니다. 다중 타입의 객체를 선언할 때, 유니온 타입을 사용하여 다양한 타입을 가진 속성을 정의할 수 있습니다. 아래는 유니온 타입을 사용하여 다중 타입의 객체를 선언하는 예제입니다.

// 다중 타입의 객체를 선언하는 유니온 타입 활용
let person: {
  name: string;
  age: number | string;
  email?: string; // 옵셔널 속성
};

person = { name: "John", age: 30 };
person = { name: "Emily", age: "thirty", email: "emily@example.com" };

위의 두 가지 방법을 조합하여, 복잡한 다중 타입의 객체를 선언할 수 있습니다. 이를 통해 TypeScript에서 유연하고 강력한 타입 시스템을 이용하여 다양한 타입의 객체를 다룰 수 있습니다.

이상으로 TypeScript를 활용한 다중 타입 객체 선언 방법에 대해 알아보았습니다. 감사합니다.

더 많은 정보 보기