工作中常用的千分符

王東煜發表於2019-09-27
//第一種(陣列反轉思想)
        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))
複製程式碼

相關文章