처리중입니다. 잠시만 기다려주세요.
TTJ 코딩클래스
정규반 단과 자료실 테크 뉴스 코딩 퀴즈
퀴즈 / JavaScript / 문제

JavaScript Number.isNaN()과 전역 isNaN()의 차이점으로 올바른 것은?

보통 MDN Web Docs
보기 및 정답
A Number.isNaN()과 전역 isNaN()은 내부적으로 동일한 알고리즘을 사용하며 반환 결과에 차이가 전혀 없다
B Number.isNaN()은 타입 변환 없이 값이 정확히 NaN인지만 확인하고, isNaN()은 인자를 숫자로 변환한 후 판별한다
C 전역 isNaN()이 더 정확한 판별을 수행하고 Number.isNaN()은 과거 호환성을 위해 남겨진 레거시 함수라고 일반적으로 정의할 수 있다
D Number.isNaN()은 문자열을 인자로 전달하면 자동으로 숫자로 변환한 후 NaN 여부를 판별한다

해설

전역 isNaN()은 인자를 먼저 숫자로 변환하므로 isNaN('hello')가 true를 반환합니다. 반면 Number.isNaN()은 타입 변환 없이 값이 정확히 NaN인지만 확인하므로 Number.isNaN('hello')는 false입니다. ES6에서 추가된 Number.isNaN()이 더 예측 가능합니다.

코딩, 제대로 배우고 싶다면?

개념 확인은 퀴즈로, 실력은 실전 프로젝트로.
투더제이 코딩클래스에서 시작하세요.

정규반 살펴보기