Union Type
// 😀 변수 a는 string과 number타입 모두를 가질 수 있다는 의미
let a: string | number;
// string도 할당 할 수 있고, number도 할당 할 수 있다.
a = 1;
a = "hello";
let arr: (number | string | boolean)[] = [1, "hello", true];
type A = {
name: string;
age: number;
};
type B = {
name: string;
height: number;
};
type Union = A | B;
// 😀 User는 A타입, B타입 모두 가질 수 있다.
let User: Union = {
name: 'hdh',
age: 30
}
// 😀 User2도 A타입, B타입 모두 가질 수 있다.
let User2: Union = {
name: 'hdh',
height: 180
}
// 🔥 Union타입에 들어 있는 타입들의 모든 프로퍼티를 모두 가질 수도 있다.
let User3: Union = {
name: 'hdh',
age: 30,
height: 180
}