2.27 타입스크립트는 건망증이 심하다
타입스크립트에서 자주 하는 실수가 있습니다. 이 실수는 타입을 강제로 주장하는 경우에 흔히 나타납니다. 다음 코드를 보세요.
try {} catch (error) {
if (error) {
error.message;
}
}
// Property 'message' does not exist on type '{}'.
error는 unknown 타입입니다. unknown은 if문을 통과하면 {} 타입이 됩니다.
{} 타입은 속성을 사용할 수 없는 타입이므로 다음과 같이 구체적으로 타입을 주장하겠습니다.
try {} catch (error) {
if (error as Error) {
error.message;
}
}
// 'error' is of type 'unknown'.