Encodera

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.

Справочник JavaScript

Intl.NumberFormat

Форматирует числа, валюты, проценты и единицы измерения по правилам языка.

Доступно с: ES2015 (Intl)

Синтаксис

new Intl.NumberFormat(locales, options)

Параметры

ПараметрТипОписание
localesstringНеобязательный. Язык и регион, например en-US или de-DE.
optionsobjectНеобязательный. style (decimal, currency, percent, unit), currency, unit, notation, minimumFractionDigits, maximumFractionDigits.

Возвращаемое значение

Intl.NumberFormatОбъект с методом format().

Примеры

Цены в разных валютах:

const usd = new Intl.NumberFormat('en-US', { style: 'currency', currency: 'USD' });
const eur = new Intl.NumberFormat('de-DE', { style: 'currency', currency: 'EUR' });
 
console.log(usd.format(1234.5));
console.log(eur.format(1234.5));

Результат:

$1,234.50
1.234,50 €

Компактная запись и единицы измерения:

console.log(new Intl.NumberFormat('en-US', { notation: 'compact' }).format(1250000));
console.log(new Intl.NumberFormat('en-US', { style: 'unit', unit: 'kilometer-per-hour' }).format(90));

Результат:

1.3M
90 km/h

Количество знаков после точки:

const formatter = new Intl.NumberFormat('en-US', { maximumFractionDigits: 1 });
 
console.log(formatter.format(3.14159));
console.log(formatter.format(2));

Результат:

3.1
2

Примечания

В немецком и русском форматах разделитель разрядов — пробел или точка, а дробной части — запятая. Такие строки нельзя снова превратить в число через Number(): форматируйте только для показа.

См. также

  • Number.prototype.toLocaleString — Форматирует число по правилам языка: разделители разрядов, валюта, проценты.
  • Number.prototype.toFixed — Форматирует число с заданным количеством знаков после запятой.
  • Intl.PluralRules — Выбирает форму слова для числа: 1 file, 2 files.

Вопросы и ответы по теме

В учебнике

  • Форматирование: Intl — Форматирование чисел, денег, дат и окончаний слов в JavaScript с учётом языка: toLocaleString, Intl.NumberFormat, Intl.DateTimeFormat и Intl.PluralRules.

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.