Tag Archives: JS乘法

JS jscript做小数乘法运算出现浮点错误的解决办法

在Javascript里计算小数乘法,容易出现浮点错误,例如: 12345<script> document.write (1.1*1.3); document.write ("<br>"); document.write (1.2*1.1); </script> 输出结果: 121.4300000000000001 1.32 解决问题的思路就是,先把因数放大为整数,最后再除以相应的倍数,这样就能得到正确的结果了。解决办法如下: 1、 在算式中解决 123<script> alert(1.1*(1.3*10)/10); </script> 2、添加到Number的原型方法里 123456789101112131415161718<script> Number.prototype.rate=function(){ var oStr=this.toString(); if(oStr.indexOf(".")==-1) return 1; else return Math.pow(10,parseInt(oStr.length-oStr.indexOf(".")-1)); } function tran(){ args=tran.arguments; var temp=1; for(i=0;i < args.length;i++) temp*=args[ i … Continue reading

Posted in javascript | Tagged , , , | 1 Comment