TypeScript에서 교차 타입(Intersection Type)은 여러 타입을 조합하여 하나의 타입을 생성하는 기능입니다. 교차 타입은 & 기호를 사용하여 타입을 결합합니다. 이를 통해 변수, 매개변수, 인터페이스 등에 여러 타입의 속성 및 기능을 모두 포함할 수 있습니다.
interface Car{
name: string;
start(): void;
}
interface Toy {
name: string;
color: string;
price: number;
}
const toyCar: Toy & Car = {
name: "benz",
start(){},
color: "black",
price: 10000000,
}
교차 타입이란, 두개의 interface를 모두 사용할 수 있게 만듭니다.
& 기호를 사용하여 나타내며
교차 타입을 선언시 두 interface의 타입을 모두 사용해야 합니다.
interface student {
name: string,
age: number,
height: number,
gender: "female" | "male"
}
interface rank {
ranking: number,
grade: "A" | "B" | "C" | "D" | "F",
}
const kang : student & rank = {
name: "kang",
age: 23,
height: 200,
gender : "male",
ranking: 1,
grade: "A"
}
이런식으로 작성해줍니다.
하나라도 포함하지 않을 시 에러를 발생시킵니다.
다음포스팅에서는 Class에 대해 알아보겠습니다.