타입 좁히기에 꼭 typeof를 써야 할 필요가 없습니다. 타입스크립트도 자바스크립트 문법을 사용한다는 걸 잊지 마세요!
명시적으로 유니언인 타입만 타입 좁히기를 할 수 있는 것도 아닙니다.
function trueOrFalse(param: boolean) {
if (param) {
param;
} else {
param;
}
}
// (parameter) param: true
// (parameter) param: false
boolean을 true와 false로 구분했습니다. boolean이 true | false이므로 가능합니다.
다음은 배열을 구분하는 방법입니다.