선언되지 않은 변수를 사용하거나, 선언은 했지만 값이 할당되지 않은 변수를 사용하거나, 존재하지 않는 객체 속성을 사용하는 경우 이 값을 반환합니다.
정의되지 않음과 null은 동일하지 않지만 == 연산자는
과 같이 둘을 동일하게 처리합니다.my.prop == null
prop 속성이 존재하지 않거나 존재하지만 값이 null인 경우 이 표현식의 값은 true입니다.
정의되지 않은 값을 불리언 환경에서 사용하면 false로 변환하고, 숫자 환경에서 사용하면 NaN으로 변환하고, 스트링 환경에서 사용하면 "로 변환한다. 정의되지 않음"