Форматирование валюты в JavaScript: методы форматирования валюты в JavaScript

Чтобы отформатировать валюту в JavaScript, вы можете использовать несколько методов. Вот некоторые из часто используемых подходов:

  1. toLocaleString():
    Метод toLocaleString() преобразует число в строку, используя параметры форматирования текущей локали, включая форматирование валюты. Он автоматически форматирует число в соответствии с языковыми настройками пользователя.

Пример:

const currencyValue = 123456.78;
const formattedValue = currencyValue.toLocaleString('en-US', { style: 'currency', currency: 'USD' });
console.log(formattedValue); // Output: $123,456.78
  1. Intl.NumberFormat():
    Конструктор Intl.NumberFormat() является альтернативой toLocaleString() и обеспечивает большую гибкость и контроль над параметрами форматирования. Вы можете явно указать локаль, валюту и другие параметры форматирования.

Пример:

const currencyValue = 123456.78;
const formatter = new Intl.NumberFormat('en-US', { style: 'currency', currency: 'USD' });
const formattedValue = formatter.format(currencyValue);
console.log(formattedValue); // Output: $123,456.78
  1. Пользовательское форматирование.
    Если вам нужен больший контроль над форматированием, вы можете создать собственную функцию форматирования, используя методы манипулирования строками JavaScript.

Пример:

function formatCurrency(currencyValue, currencySymbol) {
  const parts = currencyValue.toFixed(2).split('.');
  const formattedValue = parts[0].replace(/\B(?=(\d{3})+(?!\d))/g, ',');
  return currencySymbol + formattedValue + '.' + parts[1];
}
const currencyValue = 123456.78;
const formattedValue = formatCurrency(currencyValue, '$');
console.log(formattedValue); // Output: $123,456.78