工作中经常遇到四舍五入保留两位小数,记录一下吧
// x为传入的值,pos为保留的小数位
function fomatFloat(x,pos){
var f = parseFloat(x);
if(isNaN(f)){
return false;
}
f = Math.round(x*Math.pow(10, pos))/Math.pow(10, pos); // pow 幂
var s = f.toString();
var rs = s.indexOf('.');
if(rs < 0){
rs = s.length;
s += '.';
}
while(s.length <= rs + pos){
s += '0';
}
return s;
}
console.log("3.10159267保留2位小数:" + fomatFloat(3.10159267, 2));
console.log("3.15159267保留1位小数:" + fomatFloat(3.15159267, 1));
// 3.10159267保留2位小数:3.10
// 3.15159267保留1位小数:3.2