//每三位数逗号隔开
'123456789'.toString().replace(/B(?=(d{3})+$)/g,',');
// or
Number('123456789').toLocaleString()
// or
'123456789'.toString().replace(/\d{1,3}(?=(\d{3})+$)/g, '$&,')
结果:
123,456,789
B
:匹配非单词边界
(?=)
:正向零宽断言
d{3}
:匹配三个数字字符
+
:与前面的d{3}结合表示匹配3的整数倍个数字字符
$
:字符串结尾$&
表示匹配到的数字,比如:’123‘,’456‘
所以合起来的意思就是:匹配单词中的某个位置,这个位置之后的字符全部为数字,且出现次数是3的整数倍。