더북(TheBook)

공통 속성이 있으므로 in 연산자 대신 바로 속성에 접근할 수 있습니다.

또는 직접 타입 좁히기 함수를 만들 수도 있습니다. 다음과 같은 경우를 봅시다(앞의 예제를 변형했습니다).

function isMoney(param: Money | Liter) {
  if (param.__type === 'money') {
    return true;
  } else {
    return false;
  }
}
function moneyOrLiter(param: Money | Liter) {
  if (isMoney(param)) {
    param;
  } else {
    param;
  }
}
// (parameter) param: Money | Liter
// (parameter) param: Money | Liter
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.