工作中常用的千分符

214 阅读1分钟
//第一种(数组反转思想)
        var str = '123456789';
        function formateMoney(str) {
            str = str.split('').reverse().join('');
            let s = '';
            for (let i = 0; i < str.length; i++) {
                if (i % 3 == 2) {
                    s += str[i] + ','
                } else {
                    s += str[i]
                }
            }
            s = s.split('').reverse().join('');//,123,456,789多一个逗号 要替换为空
            return s.replace(/^,/g, '');
        }
        console.log(formateMoney(str))
        
      //第二种 正则思想
      var str = '123456789'
      function formateMoney(str){
          var reg = /\d{1,3}(?=(\d{3})+$)/g;
          return str.replace(reg,'$1,')
      }
      console.log(formateMoney(str))
      
      //第三种 正则思想
      var str = '123456789'
        function formateMoney(str) {
            var reg = /\d{1,3}(?=(\d{3})+$)/g;
            return str.replace(reg, function (a) {
                console.log(a)//123  456
                return a + ','//在每三个后面加一个逗号
            })
        }

        console.log(formateMoney(str))