Чтобы отформатировать значение валюты в JavaScript и исправить его до двух десятичных знаков, вы можете использовать метод toLocaleString()
вместе с параметрами, доступными в Intl.NumberFormat
объект. Вот пример:
const currencyValue = 1234.56;
const formattedCurrency = currencyValue.toLocaleString('en-US', {
style: 'currency',
currency: 'USD',
minimumFractionDigits: 2,
maximumFractionDigits: 2,
});
console.log(formattedCurrency); // Output: $1,234.56
В приведенном выше коде метод toLocaleString()
используется для форматирования переменной currencyValue
как строки валюты. Для параметра style
установлено значение 'currency'
, а для параметра currency
установлено значение 'USD'
для США. долларов. Для параметров minimumFractionDigits
и maximumFractionDigits
установлено значение 2
, что гарантирует, что отформатированное значение валюты имеет ровно два десятичных знака.
Вот несколько методов, которые можно использовать для фиксации значения валюты до двух десятичных знаков в JavaScript:
-
Использование метода
Number.prototype.toFixed()
:const currencyValue = 1234.56; const fixedCurrency = currencyValue.toFixed(2); console.log(fixedCurrency); // Output: "1234.56"
-
Использование функции
Math.round()
:const currencyValue = 1234.56789; const roundedCurrency = Math.round(currencyValue * 100) / 100; console.log(roundedCurrency); // Output: 1234.57
-
Использование функции
Math.floor()
:const currencyValue = 1234.56789; const flooredCurrency = Math.floor(currencyValue * 100) / 100; console.log(flooredCurrency); // Output: 1234.56
-
Использование объекта
Intl.NumberFormat
в сочетании сtoLocaleString()
:const currencyValue = 1234.56; const formattedCurrency = currencyValue.toLocaleString('en-US', { minimumFractionDigits: 2, maximumFractionDigits: 2, }); console.log(formattedCurrency); // Output: "1,234.56"