此页面上有脚本错误。虽然它是写给网站编辑,您可以在下面查看部分内容。

这篇翻译不完整。请帮忙从英语翻译这篇文章

{{JSRef}}

 Intl.NumberFormat.prototype.format 返回一个根据{{jsxref(“NumberFormat”)}对象的语言环境和格式化选项,来格式化一个数字的函数。

{{EmbedInteractiveExample("pages/js/intl-numberformat-prototype-format.html")}}

语法

numberFormat.format(number)

参数

number
需要被格式化的数值。

描述

该函数返回一个根据{{jsxref(“NumberFormat”)}对象的语言环境和格式化选项,来format 一个数字的函数。

Examples

使用 format

使用 format 格式化一个单一的货币值, 以俄罗斯为例:

var options = { style: 'currency', currency: 'RUB' };
var numberFormat = new Intl.NumberFormat('ru-RU', options);
console.log(numberFormat.format(654321.987));
// → "654 321,99 руб."

使用 format 和 map

使用 format 返回的函数来格式化数组中的所有数字。注意,该函数绑定到所获得的{{jsxref("NumberFormat")}},因此它可以直接传递给{{jsxref("Array.prototype.map")}}。

var a = [123456.789, 987654.321, 456789.123];
var numberFormat = new Intl.NumberFormat('es-ES');
var formatted = a.map(numberFormat.format);
console.log(formatted.join('; '));
// → "123.456,789; 987.654,321; 456.789,123"

规范

规范 状态 注解
{{SpecName('ES Int 1.0', '#sec-11.3.2', 'Intl.NumberFormat.prototype.format')}} {{Spec2('ES Int 1.0')}} Initial definition.
{{SpecName('ES Int 2.0', '#sec-11.3.2', 'Intl.NumberFormat.prototype.format')}} {{Spec2('ES Int 2.0')}}  
{{SpecName('ES Int Draft', '#sec-Intl.NumberFormat.prototype.format', 'Intl.NumberFormat.prototype.format')}} {{Spec2('ES Int Draft')}}  

浏览器兼容性

{{Compat("javascript.builtins.Intl.NumberFormat.format")}}

相关链接

  • {{jsxref("NumberFormat", "Intl.NumberFormat")}}
  • {{jsxref("Number.prototype.toLocaleString()")}}

文档标签和贡献者

 此页面的贡献者: Evansy
 最后编辑者: Evansy,