函数 Number.prototype.toLocaleString() 返回负数 0

问题描述 投票:0回答:1

下面的代码返回负数 0 而不是 0。有办法解决这个问题吗?

x.toLocaleString('en-US',{minimumFractionDigits:0,maximumFractionDigits:0});
javascript browser
1个回答
0
投票

是的,获取 -0 而不是 0 的问题可以通过确保显式检查 x 的值并将其转换为 0(如果为 -0)来解决。您可以使用 Math.abs() 函数来实现此目的。以下是修改代码的方法:

x = Math.abs(x); x.toLocaleString('en-US', { 最小分数: 0, 最大分数: 0 }); 这将确保任何 -0 值在格式化之前都转换为 0。

© www.soinside.com 2019 - 2024. All rights reserved.