欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

JS精度问题 乘以10的N次方出现精度问题

程序员文章站 2022-03-09 07:53:26
乘以10的N次方出现精度问题...

老问题了,不多说
相对于其他文章,本文的不同点是 发现了这个问题:

小数乘以10的N次方也可能出现精度问题。

例如: 17881.33*100 = 1788133.0000000002
鉴于此,其他方法在化整时也应进行toFixed()

先乘后除 法 建议在10万级以下,两位小数下使用。

下面这块节选很优秀,直接搬过来了~

首先考虑的是如何解决浮点数运算的精度问题,有3种思路:
考虑到每次浮点数运算的偏差非常小(其实不然),可以对结果进行指定精度的四舍五入,比如可以parseFloat(result.toFixed(12));
将浮点数转为整数运算,再对结果做除法。比如0.1 + 0.2,可以转化为(1*2)/3。 把浮点数转化为字符串,模拟实际运算的过程。
把浮点数转化为字符串,模拟实际运算的过程(使用成熟的库)。

参考文章:
js中精度问题以及解决方案

本文地址:https://blog.csdn.net/qq_33592641/article/details/111386498

相关标签: 工作中的小问题