js处理浮点数保留两位小数

js处理浮点数保留两位小数

前言

    最近在做酒店管理系统的时候,有个订单总金额需要我根据每天房价计算,但因为房价是有两位小数的浮点数,有时候会有所偏差,例如20.02 * 3 * 3 = 180.1800000001等等,这就需要我们对数据自行处理了。

处理方法

1:转换字符串截取法

function deal()
{
 var price = 180.1800000001 + "";
 var price1 = price .substring(0,price .indexOf(".") + 3);
 price = price1 * 1;
}

2:正则表达式处理

function deal()
{
 var price = 180.1800000001 + "";
 var rule = /([0-9]+.[0-9]{2})[0-9]*/;   //定义正则表达式
 var price1 = price .replace(rule ,"$1");
 price = price1 * 1;
}

3:Math.round()方法,四舍五入处理

function deal()
{
 var price = 180.1800000001;
 price1 = Math.round(price *100)/100);
}

最后补充Math的其他方法

1.向上取整,有小数就整数部分加1

Math.ceil()

2.向下取整

Math.floor()
©️2020 CSDN 皮肤主题: 1024 设计师:上身试试 返回首页