Я ищу прокладку для API интернационализации ECMAScript. Кто-нибудь знает о таком проекте? (Даже если он все еще находится в стадии разработки.)
Есть ли прокладка i18n (Intl) для JavaScript?
Ответы (4)
Да, полифилл для ECMA-402 (он же Спецификация ECMA Internationalization API) доступен по адресу https://github.com/andyearnshaw/Intl.js.
Для использования в приложениях Node.js вы можете установить с помощью NPM:
npm install intl
Он также доступен как компонент Bower для внешнего интерфейса:
bower install intl
Есть поддержка NumberFormat
и DateTimeFormat
, но нет поддержки Collator
. В настоящее время для клиентских сред браузера необходимо добавить данные локали с помощью отдельной функции. Подробности смотрите в файле README.md.
Отказ от ответственности: @AndyE является автором Intl.js
.
Этот SO-вопрос дает некоторые рамки для поддержки i18n в javascript. https://stackoverflow.com/questions/9640630/javascript-i18n-internationalization-frameworks-libraries-for-client-side-use
Я предполагаю, что вы знаете, что «Google Chrome версии 24, которая в настоящее время находится в стадии бета-тестирования, реализует API с объектами Collator, NumberFormat и DateTimeFormat, как описано выше». (см. здесь). Любая прокладка будет либо огромной, либо неполной с точки зрения охвата локали — вы действительно хотите внедрить числа каннада (это язык, на котором говорят здесь, в Бангалоре)?
Мое предложение состояло бы в том, чтобы свернуть вашу собственную уменьшенную прокладку с нужными вам частями, выбирая и выбирая из других библиотек, которые делают аналогичные вещи по мере необходимости. Например, вам может понадобиться форматирование даты/времени, но не сортировка (что сложно).
Только что нашел этот старый вопрос, и, поскольку реализация ECMA-402 недоступна во всех браузерах, я нашел полифиллы formatjs.io быть полезным, если вам нужна поддержка таких браузеров, как Safari или IE.
DateTimeFormat
иNumberFormat
и доступен в виде опубликованного пакета NPM. Поэтому я решил, что пришло время дать ответ здесь. ;-) - person Andy E   schedule 10.12.2013