1、toFixed
toFixed自带四舍五入和补位的功能
<script>
var num1 = 8.25443;
var num2 = 8.25632;
var num3 = 8.2;
alert( num1.toFixed(2)); // 输出结果为 8.25
alert( num2.toFixed(2)); // 输出结果为 8.26
alert( num3.toFixed(2)); // 输出结果为 8.20
</script>
2、parseFloat
parseFloat可以去掉小数点后面多余的0
<script>
var num1 = 8.234;
var num2 = 8.200;
alert( parseFloat(num1)); // 输出结果为 8.234
alert( parseFloat(num2)); // 输出结果为 8.2
</script>
3、精确到n位,不含n位
var num1 = 8.6231;
var num2 = 8.6261;
alert( num1.toPrecision(2)); //输出结果为 8.6
alert( num2.toPrecision(3)); //输出结果为 8.63
4、保留y位小数,并且去掉小数点后面多余的0
function toDecimal(x, y) {
var f = parseFloat(x);
var s = f.toString();
if(s.indexOf('.') > -1) {
var rs = s.substring(s.indexOf('.')+1);
if(rs.length > y) {
f = parseFloat(x).toFixed(y);
}
}
return f;
}
5、处理千分位并保留y位小数
function toDecimalFormatNumber(x, y) {
var f = parseFloat(x);
var s = f.toString();
if(s.indexOf('.') > -1) {
var rs = s.substring(s.indexOf('.')+1);
var len = rs.length;
if(len > y) {
f = accounting.formatNumber(x, y);
} else {
len += 1;
f = accounting.formatNumber(x, y);
f = f.substring(0, f.indexOf('.')+len);
}
} else {
f = accounting.formatNumber(x, 0);
}
return f;
}