猿问

js中1-0.55=0.44999999999999996怎么解决

如题今天在使用js进行数据自动结算时出现这样的结果
bjObj.val(parseFloat(1-parseFloat(xzObj.val())));
就是通过这个代码来计算的结果1-0.55的0.44999999999999996
请大神讲解说明如果能够修复更好runjs代码库
Helenr
浏览 356回答 2
2回答

哈士奇WWW

用toFixed()来选择保留几位小数varnumber=0.3-0.2//0.09999999999999998number.toFixed(2)//"0.10"typeofnumber.toFixed(2)//"string"number=+number.toFixed(2)//0.1也可以用这个big.js

拉莫斯之舞

如果要做到精确,那先定义好要保留小数点后几位,即精确到10的k次方分位。小数点右边第一位是十分位,第二位是百分位。假设要保留小数点后两位,就是精确到百分位,那么先把结果乘以100,再四舍五入取整,再除以100。Math.round(parseFloat(1-0.55)*100)/100
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答