码迷,mamicode.com
首页 > Web开发 > 详细

JS 实现四舍五入保留两位小数并且添加千位分隔符

时间:2018-12-19 13:20:36      阅读:197      评论:0      收藏:0      [点我收藏+]

标签:小数   nan   float   UNC   判断   amp   四舍五入   else   parse   

var a = "-123456789.078";
a = (Math.round(a * 100) / 100).toFixed(2).toString().replace(/(\d)(?=(\d{3})+\.)/g, function($0, $1) {return $1 + ",";});
console.log(a)

可以将方法写成function,也可以自己在VUE或者angular绑定数据的时候直接使用。

 

如果需要保留任意一位小数可以将100写成变量

function formatNumber(a,n){

  if(n===0){

          a=a.replace(/(\d)(?=(\d{3})+$)/g,"$1,");

       }else{

             n1=Math.pow(10,n);

             a = (Math.round(a * n1) / n1).toFixed(n).toString().replace(/(\d)(?=(\d{3})+\.)/g, function($0, $1) {return $1 + ",";});

      }   

    return a;  

}

var num1=formatNumber("-123456789.078771",4);

或者方法

function  toThousands(num,n, separator) {
     var parts;
     num = num + "";
     // 判断是否为数字
     if (!isNaN(parseFloat(num)) && isFinite(num)) {

         n1=Math.pow(10,n);

         num = (Math.round(num* n1) / n1).toFixed(n);


         parts = num.split(‘.‘);
         parts[0] = parts[0].toString().replace(/(\d)(?=(\d{3})+(?!\d))/g, ‘$1‘ + (separator || ‘,‘));

         return parts.join(‘.‘);
     }
     return NaN;
}

var num1=toThousands("-123456789.078771",4);

 

JS 实现四舍五入保留两位小数并且添加千位分隔符

标签:小数   nan   float   UNC   判断   amp   四舍五入   else   parse   

原文地址:https://www.cnblogs.com/qiangonline/p/10141986.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!