취소

커뮤니티

가이드

서포트

전체

Overview

자바스크립트는 양의 무한대와 숫자가 아닌 값을 표현하기 위해  Infinity와 NaN이라는 전역변수가 정의되어 있다.

1. Infinity

자바스크립트는 산술연산시 발생하는 오버플로, 언더플로, 0으로 나누는 것에 대해서 에러를 발생시키지 않는다.

표현가능한 가장 큰수나 가장 작은수의 범위를 벋어나는 오버플로 값에 대해서는 Infinity 나 -Infinity로 표현한다.

표현가능한 가장 0에 가까운 값보다 더 0에 가까운  언더플로 값에 대해서는 0으로 표현한다.

0으로 나누는 연산에 대해서도 에러가 아닌  Infinity 나 -Infinity가 반환된다.

2. NaN

자바스크립트는 숫자 산술연산에서 나오는 숫자가 아닌 값에 대해서는 NaN이라는 전역변수를 사용한다.

0을 0으로 나누게 되면 NaN이 반환된다.

NaN 전역변수는 다른 값(변수)과 비교할 수 없다. "x==NaN"같은 표현을 사용할 수 없다. 대신 자바스크립트에서는 NaN값을 비교하기 위해서 isNaN()같은 전역 함수를 제공한다. isNaN()함수는 들어오는 매개변수값이 숫자가 아니면(NaN, 문자열, 객체....) 참값을 반환한다. 이와 유사한 isFinite()라는 전역함수도 있다. 전역함수의 사용방법에 대해서는 다른장에서 자세히 다룬다. 

정리하는것도 일이네요...ㄷㄷ