繁体   English   中英

格式化货币显示货币名称而不是符号

[英]Formatting currencies shows name of currency instead of symbol

我正在像这样使用Number.prototype.toLocaleString()

5000.70.toLocaleString('en-AU', {
    style: 'currency',
    currency: 'EUR',
    currencyDisplay: 'symbol',
    useGrouping: true
}) // "EUR 5,000.70"

预期结果是"5,000.70 €""€5,000.70"

相反,Chrome 中的 output 是"EUR 5,000.70"

如果您阅读Intl.NumberFormat()规范currencyDisplay的可能值为:

  • symbol ”使用本地化的货币符号,例如€,这是默认值,
  • narrowSymbol ”使用窄格式符号(“$100”而不是“US$100”),
  • code ”使用 ISO 货币代码,
  • name ”使用本地化的货币名称,例如“ dollar ”,

因此,看起来是将currencyDisplay设置为narrowSymbol以实现您想要的问题:

 const x = 5000.70.toLocaleString('en-AU', { style: 'currency', currency: 'EUR', currencyDisplay: 'narrowSymbol', useGrouping: true }); console.log(x); // €5,000.70

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM