[英]How do I sort this JSON object by the languages on the right of each entry?
我正在使用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"
}
谢谢您的帮助:)
JavaScript不保证对象属性的任何顺序。 因此,您需要创建一个数组,该数组以数字方式索引每个条目。
例如:
var list = [];
for (x in languages) {
list.push({lang: languages[x], word: x});
}
然后,按语言排序,您可以:
list = list.sort(function (a, b) { return a.lang < b.lang; });
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.