undefined나 null 값이 없거나(명시적 표현) 정의되지 않은
null은 숫자로 표현할 시 0 타입으로 표현시 Object
undefined는 Nan, 타입으로 표현시 undefined는
동등연산자 > 타입캐스팅 발생
엄격한 연산자
동등 비교 연산자 일치 비교 연산자
형변환 ex Number, valueAsNumber같이 해서 완전하게 비교하기
eslint에 eqeqeq를 강제할 수 있는 방법도 있음
느슨한 검사 > 암묵적 형변환
이것보단 명시적 형변환을 하자
사용자 > 명시적 형변환 타입
JS > 암묵적 형변환 타입
isNaN 느슨한 검사
Number.isNaN 엄격한 검사
경계를 다룰 시 min max
1. 최소값과 최대값을 다룬다
2. 최소값과 최대값 포함 여부를 결정해야한다 (이상 - 초과 / 이하-미만)
3. 혹은 네이밍에 최소값과 최대값 포함 여부를 표현
매개변수 순서가 경계
호출하는 함수 네이밍과 인자 순서 연관성 고려
1. 매개변수 2개 넘지 않도록 함수 만들기
2. arguments, rest param
3. 랩핑하는 함수
4. 매개변수 객체로 남아 넘기기