JavaScript 处理浮点数源码

    //浮点数直接截位函数  
    function formatnumber(value,num){  
        var tmp,idx,len,i  
        tmp = value.toString();  
        idx = tmp.indexOf('.');  
        len = tmp.length;  
        if (num==0){  
            if (idx!=-1)  
            tmp = tmp.substring(0,idx);  
        }  
        else{  
            if (idx==-1){  
                tmp = tmp + ".";  
                for (i=1;i<=num;i++)  
                    tmp = tmp + "0";  
            } else {  
                tmp = tmp.substring(0,idx+num+1);  
                for (i=len;i<=idx+num;i++)  
                    tmp = tmp + "0";  
                }  
            }  
         return tmp  
     }  
      
    //截位带四舍五入  
    function adv_format(value,num) //四舍五入  
    {  
         var a_str = formatnumber(value,num);  
         var a_int = parseFloat(a_str);  
         if (value.toString().length>a_str.length){  
              var b_str = value.toString().substring(a_str.length,a_str.length+1)  
              var b_int = parseFloat(b_str);  
              if (b_int<5){  
                   return a_str  
              }else{  
                   var bonus_str,bonus_int;  
                   if (num==0){  
                        bonus_int = 1;  
                   }else{  
                        bonus_str = "0."  
                        for (var i=1; i<num; i++)  
                        bonus_str+="0";  
                        bonus_str+="1";  
                        bonus_int = parseFloat(bonus_str);  
                   }  
             a_str = formatnumber(a_int + bonus_int, num)  
              }  
         }  
         return a_str  
    }  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值