toFixed 解决 JavaScript 浮点数运算不精确的问题

作者:vkvi 来源:千一网络(原创) 日期:2014-10-13

JavaScript 的浮点数让人伤透了脑筋。

结果不是 1.91,而是 1.9100000000000001。

在固定小数位数的情况下,可用 toFixed 来解决,比如金额保留后 4 位,就可用:

先多取一位,再取 4 位,这样来解决。

为什么要多取一位呢?主要是怕这种情况:结果应是 0.12345,取 4 位就是 0.1235,可现在结果不精确,是 0.1234499999999999,如果直接取 4 位了断,就成了 0.1234,故先多取一位。

但遇到特殊情况也有问题,比如结果是:3.444446,这是个精确的运算结果,若要根据前面的方式,先取 5 位,就是 3.44445,再取 4 位就成了 3.4445,而正确的应该是 3.4444。

所以说上述方法还是有一定受限,具体怎么用,各位慢慢研究,我是被整疯了。

相关阅读

你前面那位网友看了:确定性函数和非确定性函数

▲▲▲嘿,欢迎转载传播本站原创文章,尽量保留来源噢。▲▲▲

文章评论
赞助商们
vkvi
vkvi

作者简介: vkvi,致力于 .NET Web 开发、移动开发的技术推广,在 .NET、SQL Server、Windows Server 等方面有深入研究和丰富经验,10 年间共计撰写文章 4000 余篇。 主持金融、国土、农业、电商等多个行业项目执行, 推行“技术提升生产力、人心决定成功率”的管理理论。 联系他