js金额数字格式化
一、使用 toLocaleString()
要格式化金额,可以使用 JavaScript 的 toLocaleString() 方法。该方法可以将数字转换为本地化的字符串表示形式,并可以指定货币符号、小数点和千位分隔符等格式。
美元
const amount = 1234567.89;
const formattedAmount = amount.toLocaleString("en-US", {
style: "currency",
currency: "USD",
minimumFractionDigits: 2,
maximumFractionDigits: 2,
});
console.log(formattedAmount);
人民币
const amount = 1234567.89;
const formattedAmount = amount.toLocaleString("zh-CN", {
style: "currency",
currency: "CNY",
minimumFractionDigits: 2,
maximumFractionDigits: 2,
});
console.log(formattedAmount);
在这个示例中,将数字变量 amount 使用 toLocaleString() 方法转换为本地化的字符串表示形式,并指定了以下格式:
style: 'currency' 表示使用货币格式显示金额。
currency: 'USD' 表示使用美元符号作为货币符号。
minimumFractionDigits: 2 表示最少保留两位小数。
maximumFractionDigits: 2 表示最多保留两位小数。
通过这种方式,可以使用 JavaScript 快速简单地实现金额格式化效果。需要注意的是,toLocaleString() 方法在不同的浏览器和操作系统中可能存在差异,需要进行兼容性测试和兼容性处理。
二、 使用模板字符串 + toFixed + 正则替换
const amount = 1234567.89;
const formattedAmount = `¥${amount
.toFixed(2)
.replace(/\B(?=(\d{3})+(?!\d))/g, ",")}`;
console.log(formattedAmount);
在这个示例中,通过 toFixed 使金额保留两位小数,使用正则替换的方式增加千位分隔符,再使用模板字符串进行拼接。
本文内容仅供个人学习/研究/参考使用,不构成任何决策建议或专业指导。分享/转载时请标明原文来源,同时请勿将内容用于商业售卖、虚假宣传等非学习用途哦~感谢您的理解与支持!