[typescript] 유니온 타입과 교차 타입의 차이점은 무엇인가요?
유니온 타입 (Union Types)
유니온 타입은 |
연산자를 사용하여 둘 이상의 타입을 조합하여 새로운 타입을 만드는 방법입니다. 예를 들어,
type MyType = number | string;
위 코드는 MyType
이 숫자나 문자열 중 하나가 될 수 있음을 정의합니다. 따라서 MyType
변수는 숫자 또는 문자열 값을 가질 수 있습니다.
교차 타입 (Intersection Types)
교차 타입은 &
연산자를 사용하여 둘 이상의 타입을 결합하여 새로운 타입을 생성하는 방법입니다. 예를 들어,
type MyType = Type1 & Type2;
위 코드는 MyType
이 Type1
과 Type2
의 속성을 모두 가지고 있는 새로운 타입이 됨을 정의합니다. 즉, MyType
변수는 Type1
과 Type2
의 속성을 가집니다.
유니온 타입 vs. 교차 타입
유니온 타입은 주어진 타입 중 하나일 수 있지만, 교차 타입은 여러 타입을 결합합니다. 따라서 유니온 타입은 “또는” 관계를, 교차 타입은 “그리고” 관계를 나타냅니다.
이러한 차이점을 통해 TypeScript에서 타입 시스템을 보다 유연하게 활용할 수 있습니다.