站内搜索: 请输入搜索关键词

当前页面: 开发资料首页JSP 专题JS中保留两位小数的毛病(高手请进!)不服气你就试一下!

JS中保留两位小数的毛病(高手请进!)不服气你就试一下!

摘要: JS中保留两位小数的毛病(高手请进!)不服气你就试一下!


<script language="javascript">
function toFloat(f,s)
{
var re=/^[/d]+[/.]{0,1}[/d]*$/;
if (!re.test(f)){return false;}
var t=Math.pow(10,s);
var val=Math.round(f*t);
var dort=val-Math.floor(val/t)*t;
for (i=s;i>1;i--)
{
if (dort{
dort='0'+dort;
}
}
return ((s>0)?(Math.floor(val/t)+'.'+dort):(Math.floor(val/t)));
}

</script>

<input name="transmoney" type="text" onblur="this.value=toFloat(this.value,2);" />

第一个参数传要格式化的值
第二个参数为保留小数的位数

这个函数在使用 toFloat(1.025,2)的时候返回 1.02,

这个步骤没有错,但是计算的时候发现

1.025*100 居然等于 102.499999999998 ,怎么规避这个错误?

高手请解决




回忆你小时候学12.34*56.78的时候是怎么做的


呵呵,小学没做过!


结帖!



跑的够远的啊


↑返回目录
前一篇: 各位高手给初学者提个建议啊...
后一篇: -lt