javascript - 如何在 Javascript 中使用尾随 ISO 代码格式化货币?
问题描述
给定 的值1000.5
,我想将其格式化为1,000.50 USD
(尾随货币代码是最相关的部分)。性能也很重要,因为格式将为数百万个值发布。因此,不鼓励使用正则表达式。
您可以使用Intl.NumberFormat或其他一些标准化的 JavaScript 数字格式化 API 来完成此操作吗?
例子:
const formatter = Intl.NumberFormat('en-US', { style: 'currency', currency: 'USD', currencyDisplay: 'code' })
formatter.format(1000.5)
实际的:
1,000.50 美元
预期的:
1,000.50 美元
解决方案
这是一个使用尾随 ISO 代码格式化的简单函数。
function FormatWithTrailingISO(currency, type,num) {
const formatter = Intl.NumberFormat(type, {
style: "currency",
currency: currency,
currencyDisplay: "code",
});
return formatter.format(num).replace(currency, "") + " " + currency;
}
用法:
console.log(FormatWithTrailingISO("USD", "en-US", 1000.5).trim());
推荐阅读
- r - 在 ROC 曲线上添加 pch 并标记 AUC 值
- .net - 无法理解 .net 中同步上下文的目的
- angular - Angular Material Date Picker - 根据外部 API 调用禁用日期
- kotlin - 致命异常:主要:okhttp3.RealCall.execute
- c++ - 为什么单行注释中的换页和垂直制表符的处理方式不同?
- javascript - 通过 jquery 获取和设置图片 URL
- android - FAB的颜色什么时候依赖colorAccent?
- swift - iOS Swift WebRTC - 无法设置远程报价 sdp:无法设置远程视频描述发送参数
- python-3.x - tktable模块安装问题。_tkinter.TclError:无效的命令名称“表”
- java - 从 Java 中的多模块项目生成数据流模板