上個月,我寫了一篇關於微軟如何在向jQuery貢獻程式碼的文章,也談到了在第一批貢獻的程式碼中的一些功能: jQuery範本和資料連結支援.
今天,我們發布了一個新的jQuery國際化插件的原型,你可以在你的JavaScript程式中引用這個插件來添加國際化功能。插件涵蓋了超過350種文化的國際化訊息,從蘇格蘭蓋爾語、佛里斯蘭語、匈牙利語、日語到加拿大英語等。插件將以開源的形式發布。
你可以從我們的Github程式碼庫下載插件的原型版本:
http://github.com/nje/jquery-glob
另外也可以在這裡下載一些範例以了解簡單的用法。
瞭解國際化
jQuery國際化外掛程式可以讓你在JavaScript程式碼中輕鬆處理不同文化之間的數字、貨幣和日期格式。例如,你可以使用這個外掛程式正確地顯示一個國家的貨幣符號:
你也可以用這個外掛程式編排日期格式,這樣日期和月份會以正確的順序顯示,而日期和月份的名稱也能夠得到正確的翻譯:
請注意上圖阿拉伯的日期格式中,年份顯示成了1431。這是因為年份已經按照回曆的方式轉換過了。
有些文化差異比較明顯,例如使用不同的貨幣或不同的月份名稱等。但另外一些差異卻細微而又出乎意料。例如,在有一些文化裡,數字不是以均衡的方式分組的。在語言標示為「te-IN」的文化中(印度東部的泰盧固語),數字先以3位數數字分組,然後再每2位數分組。因此象數字一百萬(1000000)就會被寫成「10,00,000」。而有些文化就根本不對數字分組。所有這些細微的差異都能夠被jQuery國際化外掛程式自動處理。
要得到正確的日期可能非常需要技巧。不同的文化採用不同的曆法,例如公曆和回曆。同一種文化也可能會採用多個曆法,例如日本就同時採用公曆和以天皇年號推算的紀年。插件提供了函數將日期在所有這些曆法中相互轉換。
使用語言標記
jQuery國際化外掛程式依據RFC 4646和RFC 5646標準裡定義的語言標記來辨識文化(參見http://tools.ietf.org/html/rfc5646 ),語言標記通常由連字符將多個輔標籤組合而成,比如:
語言標記 語言名稱(中文)
en-AU 英文(澳洲)
en-BZ 英文(貝里斯)
en-CA 英文(加拿大)
Id 印尼文
zh-CHS 中文(簡體) — 標記不再使用
Zu 祖魯文
請注意單一語言例如英語可以同時有多個語言標記。同是英語國家,加拿大採用的數字、貨幣和日期格式就不同於澳洲或美國。你可以使用下面的語言輔標籤查找工具來取得某個文化的語言標記: