Globalize.js 对比 i18next.js

Globalize.js vs i18next.js

Globalize.js 是否提供超过 i18next.js 的内容?我一直在使用 i18next.js,但找不到这两种技术的比较。一个比另一个有什么优势吗?或者,这只是另一个以 jQuery 名称出售的 jQuery 项目吗?

简答:

  1. Globalize 具有附加功能:i18next 似乎只提供消息格式。 Globalize 提供消息格式、日期格式(例如,英语中的 11/30/2010、葡萄牙语中的 30/11/2010、英语中的 Nov 30, 2010, 5:55:00 PM、西班牙语中的 30 nov. 2010 17:55:00、阿拉伯语中的 ٣٠‏/١١‏/٢٠١٠ ٥:٥٥:٠٠ م、等)、数字格式(例如,英语中的 3.142、西班牙语中的 3,142、阿拉伯语中的 ٣٫١٤٢、孟加拉语中的 ৩.১৪২ 等)、货币格式(例如,€9.99(英语),9,99 €(德语等),相对时间格式(例如,tomorrowmañana明天غدًاin 3 months, 等等), 单位格式(例如, 10 seconds, 10 segundos, 10秒钟, ١٠ ثوان, 等等).
  2. 考虑到消息格式化(这两个库都支持),Globalize 支持在构建时预编译您的格式化程序以获得更快和更小的运行时代码。
  3. 例如,
  4. Globalize.js 在 Twitter(移动网站)上大规模使用。

更长的答案:

我不知道i18nnext.js(我自己也没有用过),所以我不能准确地列出不同之处,但一眼看了一下它的文档,似乎 i18nnext 只是关于消息的格式,因此它不支持数字格式、日期格式、货币格式、单位格式和相对时间格式。也不解析。全球化支持这些。

潜在的有趣阅读:

  • Why Globalize? 它详细说明了 Globalize 背后的设计目标。有些是基于 CLDR,这是可用的最大和最广泛的语言环境数据标准存储库。它使代码与 i18n 内容分开。
  • JS libs Comparison grid - JavaScript社区的全球化(国际化和本地化)农场。它总结了 JS 的几个大型 i18n 库(由各自的维护者编写)的优点和缺点,包括 Google、Yahoo 等。顺便说一句,如果你有 i18next 所有者的联系方式,那就太好了他们为这个网格贡献他的 lib 的力量。

如果您有任何问题,请告诉我。

我想说的主要区别之一是 i18next 没有一些大 "company" 支持,例如。全球化 - jquery 或 format.js 由雅虎支持。

i18next 由社区构建 - 一次学习到处使用(不仅仅是领先公司自己的方向引领框架)。所以 i18next 适用于 React,angular,aurelia,jquery,vue,backbone,......甚至像短语这样的异国情调。在浏览器、nodejs、electron 或 native 中运行。

没有自己的日期或数字格式化程序 - 但可以轻松扩展以使用 momentjs 或 intl API:http://i18next.com/translate/formatting/

扩展列表相当惊人:http://i18next.com/docs/ecosystem/