madison
2021. 4. 6. 22:23
Number
자바스크립트에서 숫자는 정수와 부동 소수점 숫자를 일컫는다. (최근에는 BigInt를 이용하여 Number가 나타낼수있는 숫자보다 더 큰 정수를 나타낼 수 있다. )
정수 타입은 부동 소수점 값이 없는 값이다 ( 20.0은 정수 20)
아주 크거나 아주 작은 숫자는 지수형으로 표시한다. (메서드는 숫자를 지수 표기법으로 표기해 반환해주는 toExponential() 의 결과값과 동일)
숫자값은 Number.prototype 메서드로 접근할 수 있다. => toFixed(), toPrecision() 메서드 사용 가능
- 부동 소수점 숫자의 부작용 문제
0.4+ 0.2는 실제로는 0.6에 가까운숫자이며, 0.6은 아니다.
Q. 0.4 + 0.2와 0.3을 비교하는 방법은 ?
=> Number.EPSILON을 사용
( Number.EPSILON : Number형으로 표현될 수 있는 1과 1보다 큰 값 중에서 가장 작은 값의, 차. 반올림 허용 오차 이내의 Equality를 비교할 수 있음)
정수는 Number.MAX_VALUE 보다 작은 값으로 안전한 값의 범위가 정해져 있다.
출처 : You Don't Know JS , MDN