[TypeScript] Union Type & Intersection Types
- 1. Union Type : μ¬λ¬ νμ μ€ νλλ₯Ό λ§μ‘±νλ νλμ νμ (ORμ°μ°μ)
- 6. Intersection Types : μ¬λ¬ νμ μ λͺ¨λ λ§μ‘±νλ νλμ νμ (ANDμ°μ°μ)
1. Union Type : μ¬λ¬ νμ μ€ νλλ₯Ό λ§μ‘±νλ νλμ νμ (ORμ°μ°μ)
- λ³μμ κ°μ΄ μ¬λ¬ νμ μ κ°μ§λ κ²½μ° μ£Όλ‘ μ¬μ© (κ°μ₯ λ§μ΄ μ°μ)
type Direction = "left" | "right" | "up" | "down";
function move(direction: Direction) {
console.log(direction);
}
move("down"); // κ°: down
6. Intersection Types : μ¬λ¬ νμ μ λͺ¨λ λ§μ‘±νλ νλμ νμ (ANDμ°μ°μ)
type Student = {
name: string;
score: number;
};
type Worker = {
empoyeeId: number;
work: () => void;
};
function interWork(person: Student & Worker) {
console.log(person.name, person.empoyeeId, person.work());
}
interWork({
name: "kdn",
score: 1,
empoyeeId: 123,
work: () => {},
});