JavaScript千分位
2021-08-24 15:29:00 # 编程 # 前端

正则千分位

1
2
3
'1234567890.012345'.replace(/\B(?=(\d{3})+(\.|$))/g, ',')
"1,234,567,890.012,345"
// 此处有个小问题,小数位大于3,也会加上分隔符

ES函数,JS原生方法

Number.toLocaleString(),详见MDN Web

1
2
3
4
5
6
Number('1234567890.012345').toLocaleString()
"1,234,567,890.012"

// 有些浏览器默认最大3个小数位,解决办法是maximumFractionDigits(取值0-20)
Number('1234567890.012345').toLocaleString(undefined, { maximumFractionDigits: 10 })
"1,234,567,890.012345"