toLocaleString,Percentages和Firefox 38

时间:2015-04-23 22:12:10

标签: javascript localization floating-point

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

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

我得到的是' 0.00100303078581397%。'这是一个关于如何在Javascript或bug中实现浮点数的问题吗?

2 个答案:

答案 0 :(得分:2)

您是否尝试过使用maximumSignificantDigits:1?

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

答案 1 :(得分:1)

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