Номер Javascript и локализация валюты
Я столкнулся с числами и валютной локализацией в JavaScript
Для этого мне нужна удобная библиотека.
Я отвечаю за установку десятичных разделителей, валюты и т.д.
Пожалуйста, разместите лучшие ссылки, которые вы считаете
Ответы
Ответ 1
Большинство современных браузеров имеют встроенную поддержку интернационализации в форме глобального объекта Intl и расширений Number, String & Дата.
var money = 123456.12;
// display with correct formatting
money.toLocaleString('de-DE'); // "123.456,12"
// for currency, bad as we're leaving the precision to the gods of floating point numbers
money.toLocaleString('en-GB', { style: 'currency', currency: 'GBP' }); // "£123,456.12"
// for currency, good as we're using strings...
new Intl.NumberFormat('de-DE', { style: 'currency', currency: 'EUR' }).format('12312.12')
Если вы не знаете, почему числа с плавающей запятой плохи для информации о валюте, проверьте это на числах с плавающей запятой
Ответ 2
Лучший ответ для вас, вероятно, зависит от того, какая библиотека javascript, если таковая имеется, в настоящее время используется. Но YUI поддерживает число/форматирование валюты с интернационализацией, и это прочная и хорошо продуманная библиотека.
Пример:
alert(Y.DataType.Number.format(123123123.176,{
prefix: "€",
thousandsSeparator: ".",
decimalSeparator: ",",
decimalPlaces: 2,
suffix: " (EUR)"
}));
Ответ 3
Microsoft создала полезный плагин для jquery:
http://weblogs.asp.net/scottgu/archive/2010/06/10/jquery-globalization-plugin-from-microsoft.aspx
Ответ 4
Этот пост довольно старый, но я отправляю ответ, если он кого-то интересует.
Я нашел, что библиотека numeral.js очень полезна для этого.
Вы можете определить свои пользовательские форматы и добавить локализованные файлы так же, как "moment.js".
Вероятно, вам стоит проверить, соответствует ли он вашим потребностям.