목록

페이지

2015-06-10

자바스크립트 소수점 계산 시 값 오류 해결 방법

자바스크립트에서 소수점을 계산하다보면 값이 이상하게 나오는 것을 볼 수 있다. 간단한 예로 0.1 + 0.2의 경우 원하는 답은 0.3이지만 실제로는 0.30000000000000004이 나온다. 해결 방법은 toFixed() 함수를 사용하는 것. 사용 방법은 아래와 같다.

(0.1 + 0.2).toFixed(1)

이 경우 값은 0.3이 정상적으로 나온다. 파라메타로 넣은 1은 소수점 1번째까지 표시하라는 뜻으로 2자리를 표시하고 싶으면 2, 표시하고 싶지 않으면 아예 넣지 않으면 된다. 그냥 단순히 글자를 잘라버린게 아닌가 하는 의혹이 생긴 사람을 위해 한가지 더 예제를 준비하자면 6157000 * 9.133의 경우는 56231881가 맞는 결과지만 실제로 해보면 56231880.99999999가 나오는 것을 볼 수 있다. 이것을 (6157000 * 9.133).toFixed() 이렇게 하면 정상적으로 56231881가 나온다.

댓글 없음:

댓글 쓰기