使用 Globalizejs 库格式化货币时如何删除货币符号?

How to remove currency symbol, when formatting currency using Globalizejs library?

我正在使用 Globalizejs 根据我的应用程序中的登录用户详细信息格式化货币。

我不希望在使用以下代码片段完成格式化时显示货币符号:

Globalize.locale( "en" );
currencyFormatter = Globalize.currencyFormatter( "USD", {
  maximumFractionDigits: 0,
});

currencyFormatter(parseInt(totalCost.amount));

哪个returns

,212,122,112 for amount: 1212122112

有没有类似于maximumFractionDigits的选项来避免货币符号?

简答:Globalize.numberFormatter

更长的答案:使用货币格式化程序的两个好处是:(a) 正确格式化货币符号,以及 (b) 正确格式化适当数量的小数位数;请注意,美元、欧元等几种货币默认有 2 个小数位,但其他货币如日元默认为 0,也有不同的情况。

自定义格式化输出的标记和样式的适当解决方案是使用部分 Globalize.currencyToPartsFormatter:在我们发言时,此功能尚未实现 https://github.com/globalizejs/globalize/issues/679

作为一种解决方法,它应该适用于您的特定用例(无货币符号 + 仅整数金额),使用 Globalize.numberFormatter 就足够了。