Number 프로퍼티
1 과 1보다 큰 숫자 중 가장 작은 숫자, 두 숫자의 차이를 저장하고 있다. 이런걸 어디에 쓸까? Number.EPSILON은 부동 소수점으로 인해 발생하는 오차를 해결하기 위하여 사용한다.
console.log(Number.EPSILON); // 2.220446049250313e-16
console.log(0.1+0.2); // 0.30000000000000004
console.log(0.1+0.2 === 0.3); // false
0.1 과 0.2 를 더하면 0.3이 나오는 것이 당연하지만 ......0004 의 작은 오차가 발생한다. 때문에 당연한 수식도 false가 나오게 된다. 이런 오차를 해결하기 위해 나온것이 EPSILON 이다.
console.log(Math.abs((0.1+ 0.2) - 0.3) < Number.EPSILON); //true
자바스크립트에서 표현할 수 있는 가장 큰 양수 값을 저장하고 있다. 이 다음 수는 Infinity이다.
console.log(Number.MAX_VALUE) // 1.7976931348623157e+308
자바스크립트에서 표현할 수 있는 가장 작은 양수 값을 저장하고 있다. 이 다음 수는 0이다.
console.log(Number.MIN_VALUE) // 5e-324
자바스크립트에서 안전하게 표현할 수 있는 가장 큰 정수값을 저장하고 있다.
console.log(Number.MAX_SAFE_INTEGER) // 9007199254740991
console.log(Number.MAX_SAFE_INTEGER + 1) // 9007199254740992
console.log(Number.MAX_SAFE_INTEGER + 2) // 9007199254740992
console.log(Number.MAX_SAFE_INTEGER + 3) // 9007199254740994
console.log(Number.MAX_SAFE_INTEGER + 4) // 9007199254740996
자바스크립트에서 안전하게 표현할 수 있는 가장 작은 정수값을 저장하고 있다.
console.log(Number.MIN_SAFE_INTEGER) // -9007199254740991
console.log(Number.MIN_SAFE_INTEGER - 1) // -9007199254740992
console.log(Number.MIN_SAFE_INTEGER - 2) // -9007199254740992
console.log(Number.MIN_SAFE_INTEGER - 3) // -9007199254740994
console.log(Number.MIN_SAFE_INTEGER - 4) // -9007199254740996
양의 무한대를 나타내는 숫자값 Infinity 값을 가지고 있다.
console.log(Number.POSITIVE_INFINITY); // Infinity
음의 무한대를 나타내는 숫자값 -Infinity 값을 가지고 있다.
console.log(Number.NEGATIVE_INFINITY); // -Infinity
Not-a-Number 를 나타내는 NaN을 가지고 있다.
console.log(Number.NaN); // NaN