자바스크립트는 관대하다. 개발자가 Type을 지정하지 않아도, Undefined된 오브젝트를 사용하려고 해도 '일단은' 군말없이 받아준다. 그러나 사소한 규칙 위반이 쌓여 도저히 다룰 수 없을 지경이 되면 문제는 그 때부터 시작된다. 테스트 단계에서는 됐는데 배포하니까 사이트가 터졌는데요? 왜 사용자 전화번호가 number로 넘어온건가요? 사용자 이름이 undefined로 출력되는데 어떡하죠? ... 바닐라 JS는 컴파일 전에 코드를 검사하지 않는다. 따라서 우리가 무언가 잘못됐음을 직감하는 시기는 실제로 사이트가 돌아가는 와중일 가능성이 높다. 그리고 자료형(Type) 등을 엄밀하게 따지지 않는다는 점 때문에 개발 단계부터 무언가 잘못 쓰기 시작하면 문제를 알아채는 시기는 프로젝트 규모가 커진 이후가 ..