0.1 + 0.2가 0.3이 아니라고?
문제의 발견
console.log(0.1 + 0.2 === 0.3); // false
console.log(0.1 + 0.2); // 0.30000000000000004
console.log(0.1 + 0.2 + 0.3); // 0.6000000000000001
console.log(0.1 * 3); // 0.30000000000000004
console.log(0.3 - 0.1); // 0.19999999999999998JavaScript 64비트 숫자의 한계(부동소수점과 고정소수점)
1. 이진법 표현의 한계
2. 부동소수점 구조
실무에서 마주하는 상황들
1. 가격 계산
2. 좌표 계산
3. 금융 계산
해결방법?
자바스크립트만 그럴까?
참고
Last updated