Typescript: unknown과 any의 차이

타입스크립트의 타입 시스템을 공부하다 문득 unknown도 모든 타입 다 들어가고 any도 다 들어가는데 뭐가 다른거지? 라는 생각이 들어서 무슨 차이가 있는지 찾아보았다.

unknown

  • 사용시(프로퍼티에 접근 시, 연산 시) 타입을 지정해주어야 함

  • 다른 타입에 할당 불가능

  • 타입의 가능성을 열어뒀다가 좁히는 용도로 사용

any

  • 나는 타입이길 포기한다