유니언 · 타입 좁히기
여러 자료형 중 실제 값을 확인해 해당 자료형의 기능을 사용합니다.
기본 문법
value: string | number / typeof value === "string"작은 예제 typescript
function describe(value: string | number): string {
if (typeof value === "string") return value.toUpperCase();
return value.toFixed(1);
}
console.log(describe("hello"));
console.log(describe(3));실행 결과
HELLO 3.0
헷갈리기 쉬운 점
- 타입을 좁히기 전에는 모든 후보 자료형에 공통인 기능만 안전하게 쓸 수 있습니다.
- typeof null은 "object"입니다. 객체와 null이 섞인 입력은 null도 별도로 확인하세요.