哥们,小小打断一下,
select convert(numeric(10,3),@float_number) 和你的函数区别在那里?

解决方案 »

  1.   

    浮点数表示的精度问题:alert(604.055*100);显示:60405.499999999999
      

  2.   

    <script>
    function formatFloat(fNumber, iDigits, boolStrongFormat){
        var iDig=2, boolStrong =false;    if(typeof(iDigits)=="number" && iDigits>0){ iDig=iDigits;}
        if(typeof(boolStrongFormat)=="boolean"){boolStrong=boolStrongFormat;}    try{
            if(iDig>20) iDig=20;
            var sNum = fNumber.toFixed(iDig);
            var sPreNum = ""+fNumber;
            if(!boolStrong && sNum.length>sPreNum.length){
                sNum = sNum.substr(0,sPreNum.length);
            }
            return sNum;
        }catch(e){
            return "0";
        }
    }
    alert(formatFloat(604.055,1));
    alert(formatFloat(604.055,10));
    alert(formatFloat(604.055,20,true));</script>
      

  3.   

    如果IE的版本够高,可以直接写,有个现成的函数
    <script language=javascript>
    alert(123.0.toFixed(2))
    alert(123.2552.toFixed(2))
    </script>
      

  4.   

    btlyeo(春天) ( ) 信誉:100  2006-04-29 18:05:00  得分: 0哥们,小小打断一下,
    select convert(numeric(10,3),@float_number) 和你的函数区别在那里?btlyeo(春天):你这个不是javascript代码吧?!
      

  5.   

    laochake(老茶客) :谢谢你,你帮我解决了这是你在我发的代码的基础上改的,还是你自己现成的代码呢?
      

  6.   

    另外,问一下,如果要将好几个文本框中的值(即有整型也有浮点型的)进行计算后再用此函数进行四舍五入,需要先将每个文本框中的值parseFloat(document.all.text1.value)一下吗?