<toFixed()를 쓰자> 라는 뜻

YI Eun Gook·2020년 1월 14일
0

나 자신이 여러번 읽으라고 씀;

Floating Point Math문제라는게 있다.
쉽게 줄이자면.. JavaScript의 경우 이런 결과가 나오는 것;
(0.1 + 0.2 = 0.3) // false (ㅇㅁㅇ)
(참고로 결과는 0.30000000000000004가 나온다.)

정확하게 개발하자

하여 이런 저런것을 찾아봤고 decimal.js-light를 쓰기 직전이었다.

let sum = new Decimal(0);
sum = sum.plus(new Decimal(item.value));
const value = (new Decimal(1)).minus(sum.minus(new Decimal(inputObj.value))); // Decimal: Floating Point Math issue

toFixed()를 쓰세요

직전에, toFixed()를 사용하자고 옆에서 말씀해 주셨고

let sum = 0;
sum += item.value;
const value = Number((1 - (sum - Number(inputObj.value))).toFixed(3)); // Floating Point Math issue

아주 간단하게 해결되었다.

<toFixed()를 쓰자> 라는 뜻

그러니까.. 커밋하기 전에 옆에 여쭤본 것이다.
덕분에 기획쪽과 상의해서 inputObj.value를 소수점 3자리까지로 제한하기로 한 것이다.

덕분에 보편적이고 고치기 쉬운 코드가 되었다.
그러니까.. 생각보다 많은 것들이 이야기해서 해결할 수 있다는걸 나 자신 잊지 말라고 써둠!

profile
= v =?;;

0개의 댓글