Skip to content

Qvil Blog

[한국어,EN] 자바스크립트 부동소수점 계산 이상한경우(Javascript floating point calculation)

js, float, toFixed1 min read

1. 현상(Issue)

1123.456 - 123.4;

예상(Expect)

10.056

로그(Log)

10.055999999999997385

??????

2. 해결(Resolve)

1(123.456 - 123.4).toFixed(3);
1"0.056"

3. 반전(Reversal)

좋아 됐어! 그런데? 로그가 이상하다?(Yes! But?)

1typeof (123.456 - 123.4).toFixed(3);
1"string"

!?!?!?

다음에 계속...(To be continue...)

3.1. 반전 해결(Resolve the reversal)

MDN - toFixed

리턴 값(Return value)
Number 객체를 명시하는 문자열.(A String that specifies the Number object)

1Number((123.456 - 123.4).toFixed(3));
2typeof Number((123.456 - 123.4).toFixed(3));
10.056
2"number"

4. 참고(Reference)