JavaScript 下四舍五入法、舍去法、进一法截取小数的方法
JavaScript 版四舍五入法、舍去法、进一法截取小数的方法。若不指定小数位数,则按整数截取。
/**
* 四舍五入法截取一个小数
* @param float digit 要格式化的数字
* @param integer length 要保留的小数位数
* @return float
*/<br />
Digit.round = function(digit, length) {
length = length ? parseInt(length) : 0;
if (length <= 0) return Math.round(digit);
digit = Math.round(digit * Math.pow(10, length)) / Math.pow(10, length);
return digit;
};
/**
* 舍去法截取一个小数
* @param float digit 要格式化的数字
* @param integer length 要保留的小数位数
* @return float
*/
Digit.floor = function(digit, length) {
length = length ? parseInt(length) : 0;
if (length <= 0) return Math.floor(digit);
digit = Math.floor(digit * Math.pow(10, length)) / Math.pow(10, length);
return digit;
};
/**
* 进一法截取一个小数
* @param float digit 要格式化的数字
* @param integer length 要保留的小数位数
* @return float
*/
Digit.ceil = function(digit, length) {
length = length ? parseInt(length) : 0;
if (length <= 0) return Math.ceil(digit);
digit = Math.ceil(digit * Math.pow(10, length)) / Math.pow(10, length);
return digit;
};
// 使用方法
var num = 1.2345;
document.write("数字:" + num + "<br />");
document.write("四色五入法:<br />");
document.write(num + " 保留3位小数:" + Digit.round(num, 3) + "<br />");
document.write(num + " 保留2位小数:" + Digit.round(num, 2) + "<br />");
document.write("舍去法:<br />");
document.write(num + " 保留3位小数:" + Digit.floor(num, 3) + "<br />");
document.write(num + " 保留2位小数:" + Digit.floor(num, 2) + "<br />");
document.write("进一法:<br />");
document.write(num + " 保留3位小数:" + Digit.ceil(num, 3) + "<br />");
document.write(num + " 保留2位小数:" + Digit.ceil(num, 2) + "<br />");
