📌  相关文章
📜  intl.numberformat 千位分隔符 (1)

📅  最后修改于: 2023-12-03 15:15:51.460000             🧑  作者: Mango

Intl.NumberFormat 千位分隔符

Intl.NumberFormat 是JavaScript内置对象之一,用于格式化数字,支持多语言,多国家的数字格式。在此主题中,我们将介绍如何使用 Intl.NumberFormat 来添加千位分隔符。

使用方法

使用 Intl.NumberFormat 来格式化数字非常简单。您只需要指定您想要的格式,并将它传递给 format 方法即可。下面是一个示例代码片段:

const num = 1234567.89;
const formatNum = new Intl.NumberFormat('en-US').format(num);
console.log(formatNum); // "1,234,567.89"

在上面的示例中,我们创建了一个格式为 en-USIntl.NumberFormat 对象,并将其用于格式化数字 1234567.89。该代码将打印出格式化后的数字 1,234,567.89

您也可以将 Intl.NumberFormat 格式化为货币。下面是一个示例代码片段:

const formatCurrency = new Intl.NumberFormat('en-US', { 
  style: 'currency', 
  currency: 'USD' 
}).format(num);

console.log(formatCurrency); // "$1,234,567.89"

在上面的代码中,我们用 format 方法将 1234567.89 格式化为 USD 货币格式。该代码将打印出格式化后的货币 $1,234,567.89

选项

Intl.NumberFormat 提供了许多选项,您可以使用它们来更改数字的格式。下面是一些常见的选项:

  • style:数字样式。样式可以是 "decimal"(默认样式), "percent" 等等。
  • minimumFractionDigitsmaximumFractionDigits:小数点后的最小、最大位数。
  • minimumIntegerDigitsmaximumIntegerDigits:整数部分的最小、最大位数。
  • useGrouping:是否使用分组。默认为 true

下面是一些示例代码片段,展示了使用 Intl.NumberFormat 的一些选项:

const num = 1234567.89;

const formatDecimal = new Intl.NumberFormat().format(num);
console.log(formatDecimal); // "1,234,567.89"

const formatPercentage = new Intl.NumberFormat('en-US', { 
  style: 'percent', 
  minimumFractionDigits: 2
}).format(num);

console.log(formatPercentage); // "123,456,789.00%"

const formatGrouping = new Intl.NumberFormat('en-US', { 
  useGrouping: false 
}).format(num);

console.log(formatGrouping); // "1234567.89"
结束语

现在您已经了解了如何使用 Intl.NumberFormat 来添加千位分隔符了。您可以使用其他选项和配置来更改数字的其他格式。该对象不止可以在web开发中使用,在Node.js 服务器端开发,也非常实用。