好像有偏差
//对x进行四舍五入保留n位小数:
(Math.round(x * 10^n) / (10^n)).toFixed(n);
保留指定位数小数
//保留4位小数
var number = 12.3321432;
number = String(number).replace(/^(.*\..{4}).*$/,"$1");
number = Number(number); // number = 12.3321
保留N位小数
function savePointWithN(number,n){
if(isNaN(number)){
return null;
}else{
var floatVar=parseFloat(number);//转换成浮点数
var pow;//放大倍数
if(isNaN(n)){
pow=1;//按取整处理
}else{
if(n>0){
pow=Math.pow(10,n); //10的N次方倍
}else{
pow=1;//按取整处理
}
}
floatVar=floatVar * pow;//floatVar *1或者放大10的N次方倍(保留n位小数)
floatVar=Math.round(floatVar);//四舍五入取整
floatVar=Math.floor(floatVar) / pow;//还原
return floatVar;
}
}