• 使用前端JS函数进行处理 四舍五入保留后两位小数


    1、toFixed()方法
    介绍:这是JS自带的一个方法,可以四舍五入保留指定位数的小数,并且位数不够时可以自动补0
    注意:保留两位小数,将数值类型的数据改变成了字符串类型
    NumberObject.toFixed(num)—num是保留的位数,取值为0-20,默认为0
    基础使用如下,自动补0等就不展示了

    var num1 = 55.3715; 
    console.log(num1.toFixed(2));
    
    • 1
    • 2

    2、substr字符串截取
    介绍:substr是字符串自带的一个方法,主要是进行字符串的截取,所以这里使用需要将整型先转变为字符串类型。不四舍五入。
    注意:将数值类型的数据改变成了字符串类型
    substr(start, length) 返回子字符串中要包含的第一个字符的索引,要提取的字符数

    var num1 = 55.3785 + ""; 
    console.log("substr方式保留两位小数:");
    console.log(num1.substr(0,num1.indexOf(".")+3));
    
    • 1
    • 2
    • 3

    //输出55.37

    3、Math自带的方法
    Math.floor()

    介绍:不四舍五入,向下取整。

    注意:不改变数据类型

    Math.floor(11.46)=Math.floor(11.68)=Math.floor(11.5)=11
    Math.floor(-11.46)=Math.floor(-11.68)=Math.floor(-11.5)=-12
    
    • 1
    • 2

    4、浮点数四舍五入

    介绍:四舍五入,(小数点后第一位)大于五全部加,等于五正数加,小于五全不加

    注意:不改变数据类型

    //小数点后第一位<5
    正数:Math.round(11.46)=11
    负数:Math.round(-11.46)=-11
     
    //小数点后第一位>5
    正数:Math.round(11.68)=12
    负数:Math.round(-11.68)=-12
     
    //小数点后第一位=5
    正数:Math.round(11.5)=12
    负数:Math.round(-11.5)=-11
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    5、Math.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
    
    • 1
    • 2

    6、正则匹配
    介绍: 不四舍五入,字符串匹配
    注意:先转为字符串,再转为整型

    Number(15.7784514000.toString().match(/^\d+(?:\.\d{0,2})?/))
    
    • 1

    7、补充:补位功能实现
    有一些方法是没有自带补位的,这时如果业务需求是要自动补位,可以添加以下方法并去调用

    var num1 = parseFloat(55); 
      if (!isNaN(num1)) { 
      num1 = Math.round(num1*100)/100; 
      var str = num1.toString(); 
       var rs = str.indexOf('.'); 
       if (rs < 0) { 
        rs = str.length; 
        str += '.'; 
       } 
       while (str.length <= rs + 2) { 
        str += '0'; 
       } 
      console.log("将浮点数四舍五入,取小数点后2位,位数不够进行补位:");
      console.log(str);
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    以上就是js保留小数的几种方法,可以根据自己的需要选择,toFixed是我自己比较常用比较好的方法,但是IE5.5以上的版本才支持。

  • 相关阅读:
    CST初级教程 二
    Servlet - Request, Response, Servlet Context
    学Java对一个专科生,对一个穷人来说,是一条好的出路吗?
    spring boot正常启动之后访问controller下接口报404的解决方案
    python中的字符串也是可迭代对象吗?
    ES09# Filebeat配置项及吞吐调优项梳理
    双飞翼布局
    IPv6 NAT-PT配置【下一代互联网03】
    RegShot – 注册表比较工具
    全屋WiFi方案:Mesh路由器组网和AC+AP
  • 原文地址:https://blog.csdn.net/withkai44/article/details/134494883