더북(TheBook)

2.23 타입을 좁혀 정확한 타입을 얻어내자

지금까지 타입스크립트의 타입 대부분을 배웠습니다. 배운 타입의 종류가 많은 만큼 타입을 구분하는 것이 중요합니다.

2.6절에서 유니언 타입을 배울 때 타입 좁히기에 대해서 한 번 언급한 적이 있습니다. 그때는 typeof 연산자를 사용해서 타입을 좁혔습니다.

function strOrNum(param: string | number) {
  if (typeof param === 'string') {
    param;
  } else if (typeof param === 'number') {
    param;
  } else {
    param;
  }
}
// (parameter) param: string
// (parameter) param: number
// (parameter) param: never
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.