我正在使用PhoneGap和jqTouch创建一个Android应用程序,我有一个JSON对象,其中包含一个单词以及该单词所在的语言。如何按字母顺序排序,右边的列(语言) ,使用Javascript?最终结果应该是南非荷兰语作为第一个条目,祖鲁族作为最后一个。
var languages = {
"Hello" : "English",
"Bonjour" : "French",
"Hola" : "Spanish",
"السّلام عليكم" : "Arabic",
"Haai" : "Afrikaans",
"Nei ho" : "Cantonese".
"Goddag" : "Danish",
"Goede dag" : "Dutch",
"Saluton" : "Esperanto",
"Hei" : "Finnish",
"Guten tag" : "German",
"Gia'sou" : "Greek",
"Aloha" : "Hawaiian",
"Hebrew" : "Shalom",
"Namaste" : "Hindi",
"Halo" : "Indonesian",
"Aksunai" : "Inuit",
"Dia dhuit" : "Irish",
"Salve" : "Spanish",
"Kon-nichiwa" : "Japanese",
"An-nyong Ha-se-yo" : "Korean",
"Mandarin" : "Ni hao",
"Hallo" : "Norweigan",
"Dzien' dobry" : "Polish",
"Jambo" : "Swahili",
"Hej" : "Swedish",
"Sa-wat-dee" : "Thai",
"Merhaba" : "Turkish",
"Vitayu" : "Ukrainian",
"Hylo" : "Welsh",
"Sholem aleychem" : "Yiddish",
"Sawubona" : "Zulu"
}
感谢您的帮助:)
答案 0 :(得分:3)
JavaScript不保证对象属性的任何排序。因此,您需要创建一个数字,对每个条目进行数字索引。
E.g:
var list = [];
for (x in languages) {
list.push({lang: languages[x], word: x});
}
然后,要按语言排序,您可以:
list = list.sort(function (a, b) { return a.lang < b.lang; });