转载

JavaScript 保留两位小数

以下我们将为大家介绍 JavaScript 保留两位小数的实现方法:

四舍五入

以下处理结果会四舍五入:

var num =2.446242342;
num = num.toFixed(2);  // 输出结果为 2.45

不四舍五入

以下处理结果不会四舍五入:

第一种,先把小数边整数:

Math.floor(15.7784514000 * 100) / 100   // 输出结果为 15.77

第二种,当作字符串,使用正则匹配:

Number(15.7784514000.toString().match(/^\d+(?:\.\d{0,2})?/))   // 输出结果为 15.77,不能用于整数如 10 必须写为10.0000

注意:如果是负数,请先转换为正数再计算,最后转回负数

/**
* 精确小数俩位
* @param value
* @param row
* @param index
* @returns
*/
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;
}

原文链接:http://www.runoob.com/w3cnote/javascript-two-decimal.html

正文到此结束
Loading...