JavaScript 格式化金额

  • JavaScript 格式化金额已关闭评论
  • 163 次浏览
  • A+
所属分类:Web前端
摘要

要格式化金额,可以使用 JavaScript 的 toLocaleString() 方法。该方法可以将数字转换为本地化的字符串表示形式,并可以指定货币符号、小数点和千位分隔符等格式。


JavaScript 格式化金额

一、使用 toLocaleString()

要格式化金额,可以使用 JavaScript 的 toLocaleString() 方法。该方法可以将数字转换为本地化的字符串表示形式,并可以指定货币符号、小数点和千位分隔符等格式。

代码如下:

  1. 美元

    const amount = 1234567.89; const formattedAmount = amount.toLocaleString("en-US", {   style: "currency",   currency: "USD",   minimumFractionDigits: 2,   maximumFractionDigits: 2, }); console.log(formattedAmount); 
  2. 人民币

    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 使金额保留两位小数,使用正则替换的方式增加千位分隔符,再使用模板字符串进行拼接。