js中数字转金钱格式

参考连接: https://juejin.im/entry/5998f8396fb9a0247c6ec9cd?utm_source=gold_browser_extension

11、如何优雅的实现金钱格式化:1234567890 --> 1,234,567,890

用正则魔法实现:

var test1 = '1234567890'
var format = test1.replace(/\B(?=(\d{3})+(?!\d))/g, ',')

console.log(format) // 1,234,567,890

非正则的优雅实现:

 function formatCash(str) {
       return str.split('').reverse().reduce((prev, next, index) => {
            return ((index % 3) ? next : (next + ',')) + prev
       })
}
console.log(formatCash('1234567890')) // 1,234,567,890

其实还有一种很牛逼的方法
number.toLocaleString()
posted @ 2017-08-22 14:23  土豆zhang  阅读(2342)  评论(0编辑  收藏  举报