toLocaleString、百分比和 Firefox 38

toLocaleString, Percentages, and Firefox 38

我正在尝试将百分比格式化为具有三位有效数字。我想要一个相当小的百分比,比如 1075 / 107175175,显示为 0.0001%。

var x = 1075 / 107175175;
console.log(x.toLocaleString('en-us', {
    style: 'percent', minimumSignificantDigits: 1
}));

我得到的是“0.00100303078581397%”。这是 Javascript 中如何实现浮点数的问题还是错误?

您尝试过使用 maximumSignificantDigits: 1 吗?

console.log(x.toLocaleString('en-us', {
    style: 'percent', maximumSignificantDigits: 1
}));

这是一个小的逻辑错误,minimumSignificantDigits 意味着至少显示 N 个数字,而在你的情况下我认为你想使用 maximumSignificantDigits 这意味着最多显示 1 个有效数字。