近日微软发布了一款新的jQuery国际化插件,该插件涵盖了超过350种文化的国际化信息,你可以在JavaScript程序中引用这个插件添加国际化功能。同时可以在Github代码库下载插件的原型版本:http://github.com/nje/jquery-glob。
更多jQuery内容,欢迎访问: jQuery从入门到精通
理解国际化
jQuery国际化插件可以让你在JavaScript代码中轻松地处理不同文化之间的数字、货币和日期格式。例如,你可以使用这个插件正确地显示一个国家的货币符号:
你也可以用这个插件编排日期格式,这样日期和月份会以正确的顺序显示,而日期和月份的名称也能够得到正确的翻译:
请注意上图阿拉伯的日期格式中,年份显示成了1431。这是因为年份已经按照回历的方式转换过了。
一些文化差异比较明显,例如使用不同的货币或者不同的月份名称等。但另外一些差异却细微而又出人意料。例如,在有一些文化里,数字不是以均衡的方式分组的。在语言标记为“te-IN”的文化中(印度东部的泰卢固语),数字先按3位数字分组,然后再每2位数字分组。因此象数字一百万(1000000)就会被写成“10,00,000”。而有些文化就根本不对数字进行分组。所有这些细微的差异都能够被jQuery国际化插件自动处理。
要得到正确的日期可能非常需要技巧。不同的文化采用不同的历法,比如公历和回历。同一种文化也可能会采用多个历法,比如日本就同时采用公历和以天皇年号推算的纪年历。插件提供了函数将日期在所有这些历法中相互转换。
使用语言标记
jQuery国际化插件依据RFC 4646和RFC 5646标准里定义的语言标记来识别文化,语言标记通常由连字符将多个辅标签组合而成,比如:
en-AU | 英文(澳大利亚) |
en-BZ | 英文(伯利兹) |
en-CA | 英文(加拿大) |
Id | 印度尼西亚文 |
zh-CHS | 中文(简体) |
Zu | 祖鲁文 |
请注意单一语言例如英语可以同时有多个语言标记。同是英语国家,加拿大采用的数字、货币和日期格式就不同于澳大利亚或者美国。你可以使用下面的语言辅标签查找工具来获取某个文化的语言标记:http://rishida.net/utils/subtags/。
jQuery国际化插件里一个叫做globinfo的文件夹包含了这350种文化的信息。实际上,这个文件夹里有700多个文件,因为它包括了每个文件的最小化(minify)和原始版本。比如说,在globinfo文件夹,文件jQuery.glob.en-AU.js对应英文(澳大利亚),jQuery.glob.id.js对应印度尼西亚文,而jQuery.glob.zh-CHS对应简体中文。