본문 바로가기

Development /JavaScript

[Tip] 자바스크립트의 부동 소수점 문제

부동 소수점 문제

 

JavaScript IEEE 754 방식을 사용해서 0.1 + 0.1 + 0.1 = 0.30000000...01 이런 오차가 발생한다

(C# 같은 문제가 발생한다고 ...)

 

그래서 화폐단위는 . 사용하지 않는 센트 단위로 하는 것이 좋다고 한다

 

해결하기 위해선 소수점 고정인 toFixed 함수를 사용해서 자릿수 고정 자동 반올림 처리를 하면 된다

 

.toFixed(소숫점을 표현할 자릿수);

 

ex)    

var num = 3.14159;

var n=num.toFixed(2);

결과 : 3.14

 

ps : 불안하다면 그냥 소수점을 만들지 않는 방식을 택하는 것이 좋을 같음!!