TypeCheck
#
자바스크립트는 타입언어가 아니다런타임에 throw 를 던지지 않으면 오류가 전파된다.
런타임밖에 없는 언어의 가장 좋은 전략
- 에러를 감지하는 즉시 throw 를 던져야 디버깅할 수 있다.
#
TypeCheck 함수===
이 아닌 ==
을 사용하는 이유#
===
: 형 일치 검사 + ==
검사 → 두번 작동을 하기 때문에 느리다
type 은 javascript 의 특징을 잘 살린 함수이다.
#
type 함수의 사용함수의 인자를 의식할 때,
- 왼쪽에서 오른쪽으로 스코프가 하나씩 만들어지면서 처리된다.
- 따라서 2번째 인자는 1번째 인자의 값을 알고 있다.