当前位置: 代码迷 >> Java Web开发 >> eval("8997.96>=2999.32+2999.32+2999.32")失去的是false ?
  详细解决方案

eval("8997.96>=2999.32+2999.32+2999.32")失去的是false ?

热度:706   发布时间:2016-04-14 20:40:13.0
eval("8997.96>=2999.32+2999.32+2999.32")得到的是false ??????????
就是js的eval,如果有小数点就会有问题,如果是整数就没问题,这个怎么解决?
------解决思路----------------------
javascript小数运算,可以先给各参数乘以100,运算完,再除以100,纯小数参与计算,精度上的误差很大
------解决思路----------------------
你这样就明白了。eval("2999.32+2999.32+2999.32")
------解决思路----------------------
你计算方式反过来即可:
eval("2999.32+2999.32+2999.32 >= 8997.96 ") 

具体的原因我也不是很清楚。。。可是是字符串的问题吧。。
  相关解决方案