问题很简单,我们需要将逗号放在正确的位置,以帮助用户以正确的方式格式化数字。

例如,如果用户输入:


  123123123.534343


结果应该是:


  123,123,123.534343


现在我们有了:(当没有'。'时失败)


  str.toString()。replace(/ \ B(?=(\ d {3})+(?!\ d)。)/ g,',');


并且这样:(失败,因为它在'。'之后的小数部分中添加了逗号)


  str.toString()。replace(/ \ B(?=(\ d {3})+(?!\ d))/ g,',');


有任何想法吗?

最佳答案

最好使用Intl.NumberFormat格式化数字,因为它取决于语言



console.log(new Intl.NumberFormat('en-US').format(123123123.534343));

10-04 22:22
查看更多