<script language=JavaScript>
function tofloat(f,dec) { 
if(dec<0) return "Error:dec<0!"; 
result=parseInt(f)+(dec==0?"":"."); 
f-=parseInt(f); 
if(f==0) 
for(i=0;i<dec;i++) result+='0'; 
else { 
for(i=0;i<dec;i++) f*=10; 
result+=parseInt(Math.round(f)); 

return result; 

alert(tofloat(11.20000000000000000001,2))
</script>

解决方案 »

  1.   

    <script language=JavaScript>
    function tofloat(f,dec) { 
    if(dec<0) return "Error:dec<0!"; 
    result=parseInt(f)+(dec==0?"":"."); 
    f-=parseInt(f); 
    if(f==0) 
    for(i=0;i<dec;i++) result+='0'; 
    else { 
    for(i=0;i<dec;i++) f*=10; 
    result+=parseInt(Math.round(f)); 

    return result; 

    alert(tofloat(11.20000000000000000001,2))
    </script>
      

  2.   

    <script language="JavaScript">
    <!--
    Number.prototype.Fixed=function(n){
    return Math.round(this*Math.pow(10,n))/Math.pow(10,n)
    }
    a=3.145
    alert(a.Fixed(2))
    alert(a.toFixed(2));//ie5.5+
    //-->
    </script>
      

  3.   

    谢谢大家的鼎力相助,最后用了net_lover大哥的代码轻松搞定,不过苏乞儿老兄提供的函数好像没有通过,不知道是不是在我使用的开发平台中得不到支持,因为我是在LOTUS平台中使用的JS脚本。