怎么将数字的金额千分位格式化

25次阅读

共计 1525 个字符,预计需要花费 4 分钟才能阅读完成。

将示意金额的数字,示意成千分位格局,应该是比拟常见的需要。次要是要思考到有小数的状况,间接看代码吧。

1. 代码怎么写?

  <style>
    body {background: #090822;}
    .container {
      float: left;
      margin-right: 30px;
    }
    .money {
      font-size: 60px;
      font-family: 'myCoolFont';
      /* 自定义的字体名字 */
      color: #07c6ff;
    }
  </style>
</head>

<body>
  <div class="formate-before container">
    <div class="money1 money">520520850</div>
    <div class="money2 money">13141314.1314</div>
    <div class="money3 money">-996996996</div>
    <div class="money4 money">-95279.5279</div>
  </div>
  <div class="formate-after container">
    <div class="money1 money"></div>
    <div class="money2 money"></div>
    <div class="money3 money"></div>
    <div class="money4 money"></div>
  </div>

  <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
  <script>
    var number1 = formateNumbers(520520850),
      number2 = formateNumbers(13141314.1314),
      number3 = formateNumbers(-9996996996),
      number4 = formateNumbers(-95279.5279);
    $('.formate-after .money1').text(number1);
    $('.formate-after .money2').text(number2);
    $('.formate-after .money3').text(number3);
    $('.formate-after .money4').text(number4);
    /**
     * @description: 用于将数字金额,解决成千分位格局
     * @param {Number} num 须要解决的数字
     * @param {String} mark 用于分隔的字符
     * @return:{String} 千分位格局的金额
     */
    function formateNumbers(number, mark) {
      var separator = mark || ',';
      // 将数字依据小数点 '.' 宰割成数组
      var arrNumber = number && number.toString().split('.');
      if (arrNumber && arrNumber.length) {
        // 将小数点后面的数字,增加分隔符
        arrNumber[0] = arrNumber[0].replace(/\B(?=(\d{3})+(?!\d))/g, separator);
      }
      // 将数组解决为字符串返回
      return arrNumber && arrNumber.join('.');
    }
  </script>

能够自定义用于分隔的字符,默认是用逗号 , 分隔。

2. 示例代码下载

能够复制以上代码运行查看应用成果,也能够到 GitHub: https://github.com/Jackyyans/code123 下载,更多示例将会继续更新,欢送关注。

正文完
 0