<aside>
📌 합집합은 |
교집합은 &
로 타입을 나타낼 수 있다.
</aside>
집합 | 타입스크립트 |
---|---|
합집합 | |
교집합 | & |
전체집합 | unknown |
공집합 | never |
type A = string | boolean;
type B = boolean | number;
type C = A & B; // type C = boolean
type D = {} & (string | null); // type D = string
type E = string & boolean; // type E = never
type F = unknown | {}; // type F = unknown
type G = never & {}; // type G = never
{}
타입은 null
과 undefined
를 제외한 모든 타입을 말한다.type H = { a: 'b' } & number; // type H = { a: 'b' } & number
type I = null & { a: 'b' }; // type I = never
type J = {} & string; // type J = string
never
타입이 아니다.
never
타입{}
와 string의 교집합이므로 string
타입