数字相加的精度问题

问题一:

计算机是通过二进制的方式存储数据的,所以计算机在计算0.1+0.2的时候,实际上是计算两个数字的二级制的和,所以0.1+0.2并不等于0.3。

解决方法将数字乘10、乘100,转换成整数后相加,在除掉乘的那个数,就可以了。

例:

var a=0.01
var b=0.2
console.log(a+b,(a*100+b*100)/100)

问题二:

number型的0.00,显示在页面上会是0,想要显示0.00,必须为字符串型

例:

var a=2
a.toFixed(2)  //2.00

猜你喜欢

转载自blog.csdn.net/WeiflR10/article/details/125932434