无法将逗号添加到千位数

时间:2020-02-13 11:46:18

标签: javascript

有没有一种方法可以在数字的千位数中添加逗号,并删除该点和该点之后的数字? 就我而言,我尝试:

{TOTAL_COSTS_PLAN.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",")}

它只给我里面没有逗号的数字,我不明白为什么。

例如:5,432.1应为5,432 和567,892.34应该是567,892 但就我而言,它不起作用。

2 个答案:

答案 0 :(得分:1)

它不与toFixed()一起使用,因为它的返回类型是字符串

但是它可以与Math.round或任何其他回馈数字的解决方案一起使用。

let TOTAL = 654321.45;

// 654,321 for me but it may be different for you
console.log(Math.round(TOTAL).toLocaleString()); 

// 654,321 is should be same for everyone because the fixed locale
console.log(Math.round(TOTAL).toLocaleString('en')); 

答案 1 :(得分:0)

实时测试:https://runkit.com/embed/2j6np56a8dhp

'54321'.replace(/\B(?=(\d{3})+(?!\d))/g, ",");

更新:要在评论中满足您的要求,请使用以下代码段。顺便说一句:这是您的OP的题外话,:) https://runkit.com/embed/lnzcxixzhamh

Math.floor(543435.1).toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");