金额添加千分位逗号分隔符

  1. 函数方式:

把金额当做字符串,从末尾开始处理,只处理整数部分,小数部分不管,每三位就加一个逗号


function  formatAmount(num) { 
   num=num.toString().split(".");  // 分隔小数点
    var arr=num[0].split("").reverse();  // 转换成字符数组并且倒序排列
    var res=[];
    for(var i=0,len=arr.length;i<len;i++){
      if(i%3===0&&i!==0){
         res.push(",");   // 添加分隔符
      }
      res.push(arr[i]);
    }
    res.reverse(); // 再次倒序成为正确的顺序
    if(num[1]){  // 如果有小数的话添加小数部分
      res=res.join("").concat("."+num[1]);
    }else{
      res=res.join("");
    }
    return res;
}
formatAmount('18920.36');

  1. 正则匹配方式:

var reg = /(\d)(?=(\d{3})+\.)/g;
var num = 23245.12;
num.toString().replace(reg, '$1,');

  1. 使用JS自带的函数 toLocaleString:

var num = 23245.12;
num.toLocaleString();

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 8,478评论 0 4
  • 第五章******************************************************...
    fastwe阅读 3,987评论 0 0
  • 本章内容 使用对象 创建并操作数组 理解基本的 JavaScript 类型 使用基本类型和基本包装类型 引用类型的...
    闷油瓶小张阅读 3,942评论 0 0
  • 基本类型的问题 这个例子中的变量s1 包含一个字符串,字符串当然是基本类型值。而下一行调用了s1的substrin...
    Upcccz阅读 1,891评论 0 1
  • 第一章: JS简介 从当初简单的语言,变成了现在能够处理复杂计算和交互,拥有闭包、匿名函数, 甚至元编程等...
    LaBaby_阅读 5,617评论 0 6