JavaScript千分符---正则实现

一般在JavaScript中实现千分符,是使用切割+连接一顿操作

这里尝试一下使用正则快速实现千分符-----支持小数

 1 let num0 = '12'
 2 let num1 = '123'
 3 let num2 = '1234'
 4 let num3 = '123456789'
 5 let num4 = '1234567890'
 6 let num5 = '12345678901'
 7 let num6 = '123456789012'
 8 let num7 = '1234567890123'
 9 let num8 = '1234567890123.12'
10 let num9 = '1234567890123.1234567'
11 
12 function thousandSplit(s) {
13     const str = s.toString()
14     const reg = str.indexOf('.') > -1 ? /(\d{1,3})(?=(\d{3})+\.)/g : /(\d{1,3})(?=(\d{3})+$)/g;
15     return str.replace(reg, '$1,')
16 }
17 
18 console.log(thousandSplit(num0)) // 12
19 console.log(thousandSplit(num1)) // 123
20 console.log(thousandSplit(num2)) // 1,234
21 console.log(thousandSplit(num3)) // 123,456,789
22 console.log(thousandSplit(num4)) // 1,234,567,890
23 console.log(thousandSplit(num5)) // 12,345,678,901
24 console.log(thousandSplit(num6)) // 123,456,789,012
25 console.log(thousandSplit(num7)) // 1,234,567,890,123
26 console.log(thousandSplit(num8)) // 1,234,567,890,123.12
27 console.log(thousandSplit(num9)) // 1,234,567,890,123.1234567

 

posted @ 2019-04-24 15:18  青S衫%  阅读(1593)  评论(0编辑  收藏  举报