如何在JavaScript中将数字格式化为货币值

了解如何使用JavaScript国际化API将数字转换为货币值

假设您有一个类似10,它代表某物的价格。

您想将其转换为$10,00

如果数字多于3位,则应以不同的方式显示,例如1000应该显示为$1,000.00

但是,这是美元。

不同的国家有不同的惯例来显示价值

JavaScript使我们很容易ECMAScript国际化API,这是一种相对较新的浏览器API,可提供许多国际化功能,例如日期和时间格式。

它得到很好的支持:

Browser support for the internationalization API

const formatter = new Intl.NumberFormat('en-US', {
  style: 'currency',
  currency: 'USD',
  minimumFractionDigits: 2
})

formatter.format(1000) // “$1,000.00” formatter.format(10) // “$10.00” formatter.format(123233000) // “$123,233,000.00”

minimumFractionDigits属性将小数部分始终设置为至少2位数字。您可以检查可以在哪些其他参数中使用NumberFormat MDN页面

本示例为意大利国家/地区为欧元创建数字格式器:

const formatter = new Intl.NumberFormat('it-IT', {
  style: 'currency',
  currency: 'EUR'
})

免费下载我的JavaScript初学者手册


更多js教程: