.toLocaleString()非常适合我的整数数据类型;但是,它不适用于带小数的数字。

我有一些大的货币数字,除以1000可以得到千位和.toFixed(1)小数点。因此1315321.56变为1315.3。我所拥有的是:

<td>${(fieldObj/1000).toFixed(1)}</td>


当我试图添加.toLocaleString()来渲染1,315.3时,什么也没有发生,它只是正常显示。我该如何解决?

要明确的是,这是我添加的内容:

<td>${(fieldObj/1000).toFixed(1).toLocaleString()}</td>

最佳答案

toFixed返回“使用定点表示法表示给定数字的字符串”而不是数字,因此您不能在结果上调用toLocaleString

您可以使用Intl.NumberFormat选项四舍五入到1位数字。

(1315321.56/1000).toLocaleString('en-US', {minimumFractionDigits: 1, maximumFractionDigits: 1})
"1,315.3"

关于javascript - .toLocaleString()在带小数的数字上不显示逗号,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48653412/

10-09 15:06
查看更多