使用正则的话呢:
第一种:简单直接,但是要把数据处理成只有两位小数的字符串,然后在进行转换。
例如:
'10000000000.00'.replace(/\B(?=(\d{3})+(?!\d))/g, ',') // "10,000,000,000.00"。
如果小数点后面有很多位的话,这种方法会把小数点的后面也进行都好分割。
例如:
'10000000000.0034534'.replace(/\B(?=(\d{3})+(?!\d))/g, ',') // "10,000,000,000.0,034,534"。
第二种:另外一种正则写法
例如:
'10000000000.0034534.'replace(/(\d)(?=(\d{3})+\b)/g, '$1,') // "10,000,000,000.0,034,534"
如果是数字的话:可以用toLocaleString()的方法;
例如:
100000000.toLocaleString() // '100,000,000'
接下来:最简单且爆炸的一种:new Intl.NumberFormat().format('4657658.987'); //"4,657,658.987"
原来很多的方法,js原生就帮我们给处理好了,加油吧!小伙伴们~