-어떤 타입도 할당 가능한 타입을 any라고 부른다.
보통 TypeScript에서는 명시적으로 데이터의 유형들을 설정해 사용하는 정적형 지정 언어로 타입을 지정하여 사용하는 것이 권장이 된다.
하지만 Any는
다음 예제를 살펴보자
let product_id:any = 123451;
let age:any = 1;
product_id와 age가 number를 지칭하는지, string을 나타내는지 알 길이 없다. any는 모든 타입을 총 지칭하는 말이기 때문이다. 그러므로 나중에 product_id에 number만 와야 하는데 string 타입이 온다던지 그 반대가 발생해도 타입 체커는 “any네? 모든 타입 허용하였으니 딱히 문제 안되네 통과!” 라고 생각하여 오류를 나타내지 않는다.
any는 모든 변수나 연산자에 해당 될 수 있는 타입이기 때문에 따로 안내를 하지 않는다. 확실하게 타입을 표기하자.
내가 개인적으로 react에 나와 있는 TicTacTo를 JavaScript에서 TypeScript로 리팩토링 할 당시 무조건 반사로 any를 남발하였다. 그러다 보니 버그가 발생하는 경우가 여럿 존재하였다.