恼人的金额之 小数点

现实开发当中,我们总是会遇到 金额计算问题,
我们本以为js中0.1+0.2=0.3,结果0.300000000000000004,所以我们显示金额数值的时候,经常会不准,测试经常会提这样有多个小数点的bug,遇到这样的问题我们该怎么办?
 
解决办法:
把小数先装成整数计算。比如(0.1*100+0.2*100)/100 = 0.3  ,正确 ✔。
原因:为什么0.1+0.2!=0.3?
这是因为计算机的计算原因就是先把数值转成 二进制,再进行计算,所以计算机无法把0.1转成一个有限位数的二进制,而是转成一个跟0.1相近的二进制,所以0.1和0.2求和(或者求积)会出现偏差。
 
总结:js当中只要涉及到小数点的计算,都必须先转成整数进行计算。
 
 

-------------------------------------------------------------我是版本信息分界线------------------------------------------------------------

 

主编:何玉

分享人:孙爱祥

时间:20180531

 

--------------------------------------------------------------嗯 我是底线------------------------------------------------------------------

猜你喜欢

转载自www.cnblogs.com/yuebai/p/9118323.html