더북(TheBook)

Note ≣ | 혹시나 e가 any로 추론되는 경우

e가 unknown 대신 any로 추론되는 경우에는 플레이그라운드에서 TS Config 메뉴를 누르고, useUnknownInCatchVariables 체크박스에 체크하세요. 이후부터는 e가 unknown으로 추론됩니다.

▲ 그림 2-2 useUnknownInCatchVariables 활성화

eunknown이므로 그 뒤에 어떠한 동작도 수행할 수 없게 됩니다. 게다가 catch문의 e에는 anyunknown 외의 타입을 직접 표기할 수 없습니다. 이럴 때는 as로 타입을 주장(Type Assertion)할 수 있습니다.

try {
} catch (e) {
  const error = e as Error;
  console.log(error.message);
}
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.