→ 데이터의 타입을 알 수 없거나, 될 수 있는 타입이 여러개일때, 조건문을 통해 데이터의 타입을 좁혀나가는 것.
→ elice가 Human인지, Dog인지 확신할 수 없는 상태.
구별된 유니온 → 타입스크립트가 타입을 추론할 수 있도록 단서를 주는 것.
- 타입을 구별할 수 있는 단서가 있는 유니온 타입
- 구별된 유니온, 태그(타입을 구별할 수 있는 단서)된 유니온, 서로소 유니온이라 부르기도 함.
→ 객체가 어떤 클래스의 객체인지 구별할 때 사용하는 연산자.
인스턴스 instanceof 클래스
와 같이 사용함.**
→ 데이터의 타입을 반환하는 연산자.
typeof 데이터 === ‘string’
형식으로 사용.**
typeof 데이터 === ‘undefined’
처럼 undefined도 체크 가능.데이터 == ‘null’
과 같이 쓰면 null, undefined 둘 다 체크 가능.문자열 A in 오브젝트
→ 오브젝트의 key 중 문자열 A가 존재하는가.**
→ 특정 타입의 하위 타입, 구체적인 타입을 의미함.
→ 사용자 정의 함수를 사용해 타입 가드 가능.
오픈소스 sindresorhus/is를 사용하여 가독성있게 타입 체크가 가능함.
Yarn add @sindresorhus/is
npm install @sindresorhus/is