javascript - 使用 toLocaleString 格式化小数以显示 2 个小数和一个逗号
问题描述
我正在尝试将作为价格的数字格式化为这种格式 x,xxx.xx,例如 1,000.55,数据库中的数字是十进制(8,2),即 1000.55,但是当我尝试使用 toLocaleString on这个数字不起作用。
这是我在 vue 中使用的功能
formatProdPrice(value) {
return value.toLocaleString(['en-US', [{minimumFractionDigits: 2, maximumFractionDigits: 2}]]);
}
这就是我使用它的地方
formatProdPrice($page.price.price)
预期输出为 1,000.55,但现在实际输出为 1000.55。我究竟做错了什么?
解决方案
您还可以使用Intl.NumberFormat将其格式化为货币。
function formatProdPrice(value) {
return new Intl.NumberFormat("en-US", { style: "currency", currency: "USD" }).format(value);
}
formatProdPrice(1000.55); // returns "$1,000.55"
推荐阅读
- ruby-on-rails - Rails可以在多个表中引用User表中的枚举角色列吗?
- python-3.x - 多个 I2C 设备的并行(缓冲)读出,python 3
- firebase - 测试 Firebase 中缺失的属性 -> 数据库 -> 规则
- regex - 如果列表中尚不存在,如何添加项目?
- facebook - 我可以使用 Facebook 管理员角色/帐户来测试 Facebook 应用程序是否等同于 Facebook 开发人员角色/帐户?
- dynamics-crm - Dynamics CRM:无法根据活动表单中的父 ID 填充相关子记录
- react-native - 如何修复“OnPress 不在标题内工作但独立工作”
- python - 如何评估分类器的准确性并在 GridSearchCV 中留下一个生成 roc 曲线?
- adonis.js - 如何在子域和主域的adonis.js中共享会话
- android - 使用 deeplearning4j 加载 keras 模型时出错