保留小数的函数

第一种,利用math.round

var original=28.453
1) //round "original" to two decimals
var result=Math.round(original*100)/100;  //returns 28.45
2) // round "original" to 1 decimal
var result=Math.round(original*10)/10;  //returns 28.5

第二种,js1.5以上可以利用toFixed(x) ,可指定数字截取小数点后 x位

3) //round "original" to two decimals
var result=original.toFixed(2); //returns 28.45
4) // round "original" to 1 decimal
var result=original.toFixed(1); //returns 28.5

保留小数点后两位,如果不满两位,不满两位则补零

//保留两位小数   
//功能:将浮点数四舍五入,取小数点后2位  
function toDecimal(x) {  
    var f = parseFloat(x);  
    if (isNaN(f)) {  
        return;  
    }  
    f = Math.round(x*100)/100;  
    return f;  
} 

//制保留2位小数,如:2,会在2后面补上00.即2.00 
function toDecimal2(x) {  
    var f = parseFloat(x);  
    if (isNaN(f)) {  
        return false;  
    }  
    var f = Math.round(x*100)/100;  
    var s = f.toString();  
    var rs = s.indexOf('.');  
    if (rs < 0) {  
        rs = s.length;  
        s += '.';  
    }  
    while (s.length <= rs + 2) {  
        s += '0';  
    }  
    return s;  
} 
function fomatFloat(src,pos){     
     return Math.round(src*Math.pow(10, pos))/Math.pow(10, pos);     
} 

//四舍五入  
alert("保留2位小数:" + toDecimal(3.14159267));  
alert("强制保留2位小数:" + toDecimal2(3.14159267));  
alert("保留2位小数:" + toDecimal(3.14559267));  
alert("强制保留2位小数:" + toDecimal2(3.15159267));  
alert("保留2位小数:" + fomatFloat(3.14559267, 2));  
alert("保留1位小数:" + fomatFloat(3.15159267, 1));  

  

posted @ 2017-06-29 10:40  苜葉  阅读(800)  评论(0)    收藏  举报