2017-07-07 118 views
0

假设我们有没有货币的Javascript number.toLocaleString货币符号

var number = 123456.789; 

我想是在语言环境中显示此号码 '去-DE' 作为

123.456,79 

在现场“JA-JP “作为

123,457 

在语言环境 'EN-US' 作为

123,456.79 

根据用户的区域设置等。问题是,Javascript的number.toLocaleString需要指定货币符号,我无法找到如何告诉不显示它。

我试了一下:

number.toLocaleString('de-DE', { style: 'currency' })); 
// TypeError: undefined currency in NumberFormat() with currency style 

number.toLocaleString('de-DE', { style: 'currency', currency: '' })); 
// RangeError: invalid currency code in NumberFormat(): 

number.toLocaleString('de-DE', { style: 'currency', currency: false })); 
// RangeError: invalid currency code in NumberFormat(): false 

number.toLocaleString('de-DE', { style: 'currency', currency: null })); 
// RangeError: invalid currency code in NumberFormat(): null 

功能也有选项currencyDisplay。我尝试使用与currency选项相同的值,但结果相同。

回答

0

你需要货币符号吗?如果不是number.toLocaleString('de-DE')应该做的伎俩。

+0

我如何知道区域设置的货币小数位数?它可能是0,2或3:https://www.currency-iso.org/en/home/tables/table-a1.html – dMedia

+0

对不起,我想我可能误解了你。你的用例是什么? –