【工作筆記0025】js 數字或金額的千字符 ',' 分隔處理

封裝:

   function toThousand(number) {
        var result = '';
        var dot = String(number).indexOf(".");
        if (dot != -1) {            
            var dotCnt = String(number).substring(dot + 1, number.length);// 獲取小數點後面部分
            // 獲取小數點前面部分
            number = String(number).split('.')[0];
            number = (number || 0).toString();
            var count = 0;
            for (var i = number.length - 1; i >= 0; i--) {
                count += 1;
                result = number.charAt(i) + result;
                if (!(count % 3) && i != 0) { result = ',' + result; }
            }
            result = result + '.' + dotCnt;
            return result;

        } else {
            return (number || 0).toString().replace(/(\d)(?=(?:\d{3})+$)/g, '$1,');
        }
    }

使用:

console.log(toThousand(1244059173));//輸出 1,244,059,173
console.log(toThousand(1244059173.015));//輸出 1,244,059,173.015

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章