`

Js中parseFloat()方法所产生的精度问题

    博客分类:
  • js
阅读更多
项目中遇到金额的相加,结果出现了精度错误的问题,现在有个方法,不知道是不是最好的方法,但在我看来好象不会出什么错了。

Demo:

<script language="javascript">
var a = "0.11";
var b = "0.2801";
var c = "1.002";
var sum1 = parseFloat(a)+parseFloat(b)+parseFloat(c);
var sum2 = (parseFloat(a)+parseFloat(b)+parseFloat(c)).toFixed(4)
document.write("a+b+c="+sum1);
document.write("<br/>")
document.write("a+b+c="+sum2)
</script>

a,b,c相加本来为1.3921,但sum1得出的结果为:1.3921000000000001,显然不正确,通过toFixed(n)方法修正后,得到正确结果。
分享到:
评论
1 楼 tianshi0253 2011-08-07  
我也遇到这个问题了。
还没找到解决方案呢...

相关推荐

Global site tag (gtag.js) - Google Analytics