타입스크립트 강의를 보며 개인적으로 기록하는 글입니다.
이번 글에서는 unknown, never 타입에 대해 다룹니다.
예를 들어 userInput이라는 변수가 있습니다.
유저가 어떤 값을 입력할 지 모릅니다.
그래서 숫자나 문자열을 할당해도 별다른 오류가 나지 않습니다.
이렇게만 보면 any와 어떤 부분이 다른지 모르겠습니다.
그런데 string 타입인 userName에 userInput을 할당하려 하니 에러가 납니다.
userInput이 "Max"여도 말입니다.
그래서 userName에 할당하려면 이런 식으로 타입을 체크하는 추가 코드가 필요합니다. 물론 userInput의 값이 항상 숫자거나 문자열이란 걸 안다면 union으로 사용하는 게 맞지만, 이와 같이 어떤 값이 들어올지 모르는 상황에선 any보단 unknown이 낫다는 것을 알 수 있습니다.
에러 처리를 위한 함수가 있습니다.
이 함수는 return 값이 없는 함수이니 void 입니다.
그렇게 둬도 나쁠 건 없지만 never 타입으로 지정해 절대 아무것도 반환하지 않는다고 명시할 수도 있습니다. 이를 통해 의도를 명확하게 알 수 있다는 이점이 있습니다.