JS处理数据四舍五入

一,使用Math.toFixed

toFixed() 方法可把 Number 四舍五入为指定小数位数的数字。

语法
NumberObject.toFixed(num)

但是网友说toFixed bug比较多
https://www.cnblogs.com/jone-chen/p/5957318.html

可以自定义toFixed
Number.prototype.toFixed = function (fractionDigits) {
var num = this;
return Math.round(num * Math.pow(10, fractionDigits)) / Math.pow(10, fractionDigits);
};

二、使用Math.round
Math.round(x)
参数 描述
x 必需。必须是数字。
返回值
与 x 最接近的整数。

Math.round不支持直接指定小数位,如为两位小数,可以写成Math.round(x*100)/100间接实现

三,其他
转自:https://blog.csdn.net/ppx2017/article/details/80549700

1.Math.ceil():根据“ceil”的字面意思“天花板”去理解;
例如:
Math.ceil(11.46)=Math.ceil(11.68)=Math.ceil(11.5)=12
Math.ceil(-11.46)=Math.ceil(-11.68)=Math.ceil(-11.5)=-11
 
2.Math.floor():根据“floor”的字面意思“地板”去理解;
例如:
Math.ceil(11.46)=Math.ceil(11.68)=Math.ceil(11.5)=11
Math.ceil(-11.46)=Math.ceil(-11.68)=Math.ceil(-11.5)=-12

原文地址:https://www.cnblogs.com/zhaogaojian/p/10052499.html