需求:

一个数字,比如 1234,23456.23 实现每三位加逗号

改成如下形式:

1234 => 1,234

23456.23 => 23,456.23

方法一

  1. function formateNum (num) {
  2. let str = String(num);
  3. let strStart = str, strEnd = ''
  4. if (str.indexOf('.') != -1) {
  5. strStart = str.split('.')[0];
  6. strEnd = str.split('.')[1];
  7. }
  8. let len = strStart.length;
  9. let count = 0;
  10. let newStr = ''
  11. for (let i = len - 1; i >= 0; i--) {
  12. if (count % 3 == 0 && count != 0) {
  13. newStr = strStart[i] + ',' + newStr
  14. } else {
  15. newStr = strStart[i] + newStr;
  16. }
  17. count++;
  18. }
  19. if (strEnd) {
  20. newStr = newStr + '.' + strEnd;
  21. }
  22. return newStr;
  23. }
  24. let num = 129874.78;
  25. console.log(formateNum(num)); // 129,874.78
  26. let num1 = 33245;
  27. console.log(formateNum(num1)); // 33,245

方法二:

  1. /**
  2. * 12345 => $12,345.00
  3. *
  4. * @param {[type]} value [description]
  5. * @param {[type]} currency [description]
  6. * @return {[type]} [description]
  7. */
  8. function currency(value, currency) {
  9.  
  10. value = parseFloat(value)
  11.  
  12. if (!isFinite(value) || (!value && value !== 0)) {
  13.  
  14. return ''
  15. }
  16.  
  17. currency = currency !== null ? currency : '$'
  18. let stringified = Math.abs(value).toFixed(2)
  19. let _int = stringified.slice(0, -3)
  20. let i = _int.length % 3
  21. let head = i > 0
  22. ? (_int.slice(0, i) + (_int.length > 3 ? ',' : ''))
  23. : ''
  24. let _float = stringified.slice(-3)
  25. let sign = value < 0 ? '-' : ''
  26.  
  27. return currency + sign + head +
  28. _int.slice(i).replace(digitsRE, '$1,') +
  29. _float
  30. }

js实现数字每三位加逗号的更多相关文章

  1. php实现数字格式化,数字每三位加逗号的功能函数

    原地址:http://www.jb51.net/article/73781.htm php实现数字格式化,数字每三位加逗号的功能函数,具体代码如下: ? 1 2 3 4 5 6 7 8 9 10 11 ...

  2. JS数字每三位加逗号的最简单方法

    <script> function thousands(num){ var str = num.toString(); var reg = str.indexOf("." ...

  3. js 格式化数字(每三位加逗号)

    // 方法一 unction toThousands(num) { var result = [ ], counter = 0; num = (num || 0).toString().split(' ...

  4. js j将数字每三位用逗号隔开的方法

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. js金额数字格式化实现代码(三位加逗号处理保留两位置小数)

    工作中很常用的东西: 例1,使数字1111111变成11,111,111.00,保留两位小数. <html> <head> <script type="text ...

  6. JS格式化数字(每三位加逗号)

    function toThousands(num) { var num = (num || 0).toString(), result = ''; //判断是否带小数点 if (num.split(' ...

  7. js里用 toLocaleString 实现给数字加三位一逗号间隔(有无小数点都适用)

    <input type="hidden" id="totalLandArea" value="<%-info.totalLandArea% ...

  8. iOS-格式化金额,三位一逗号

    代码地址如下:http://www.demodashi.com/demo/11244.html 项目版本更新迭代中, 新增需求: 所有金额必须用标准会计表示方式(¥94,862.57). 而之前金额展 ...

  9. js给数字加三位一逗号间隔的两种方法(面试题)

    方法一:   <script type= "text/javascript"> //保留三位小数,toLocaleString() 方法可把一个 Number 对象转换 ...

  10. C# int转string 每三位加一个逗号

    ; Console.WriteLine(aaaa.ToString("N0")); Console.WriteLine()); Console.WriteLine("架构 ...

随机推荐

  1. JZOJ 3566. 【GDKOI2014】阶乘

    题目 求十进制 \(n!\) 在 \(m\) 进制下末尾 \(0\) 的个数 分析 签到题 只要看 \(n!\) 有多少个 \(m\) 的倍数就好了 考虑分解 \(m\) 的质因子 然后根号计算每个因 ...

  2. Android实现仿微信实时语音对讲功能|与女友游戏开黑

    与亲朋好友一起玩在线游戏,如果游戏中有实时语音对讲能力就可以拉进玩家之间的距离,添加更多乐趣.我们以经典的中国象棋为例,开发在线语音对讲象棋.本文主要涉及如下几个点: 在线游戏的规则,本文以中国象棋为 ...

  3. ajax请求头添加参数

    在请求ajax时 ,有时后台要求在请求头里边上参数 ,这种情况下一般都是在原生APP项目当中,因为要在登录状态下才,所有要传token和登录id, var token = localStorage.g ...

  4. 封装avalonia指定组件允许拖动的工具类

    封装avalonia指定组件允许拖动的工具类 创建Avalonia的MVVM项目,命名DragDemo ,然后将项目的Nuget包更新到预览版 <ItemGroup> <Packag ...

  5. redis(14)主从复制

    Redis主从复制 主机数据更新后根据配置和策略, 自动同步到备机的 master/slaver 机制,Master 以写为主,Slave 以读为主,主从复制节点间数据是全量的. 作用: 读写分离,性 ...

  6. EF Core迁移 (provider: SSL Provider, error: 0 - 证书链是由不受信任的颁发机构颁发的。)

    A connection was successfully established with the server, but then an error occurred during the log ...

  7. Docker和Kubernetes网络模型

    Docker网络模型 Bridge模式(默认) Docker程序启动后会创建一个bridge0网桥,并分配一个IP,可以想象成一个虚拟的交换机,创建的容器实例都会通过虚拟网卡veth pair设备连接 ...

  8. C# 元组类型和元组文本

    从 C# 7.0 开始,可以使用元组类型和元组文本轻松实现此目的. 元组类型定义元 组元素的数据类型. 元组文本提供返回的元组的实际值. 在下面的示例中, (string, string, strin ...

  9. E-MU1212m(E-MU1616m)在Win10(Win11)中的驱动安装

    创新(Creative)公司早期生产的专业PCI声卡E-MU1212m及E-MU1616m当前二手市场上的性价比非常高,但由于生产年代久远,其驱动程序最高只支持到Windows vista版本,经过实 ...

  10. 3.2 删除XxxControler中各方法中的response

    3.2.1 EmpController代码 package com.hy.controller; import javax.servlet.http.HttpServletRequest; impor ...