现在我的输出在页面上以原始JSON文件中反映的相同顺序呈现。我希望弄清楚如何按每个项目中的属性进行排序。
示例包括按name
desc和asc - 或 - 按index
asc或desc按字母顺序排序。
非常感谢任何帮助!
menu.json
{ "menuItems": [
{
"index": 12432564,
"parentCategory": "Espresso",
"name": "Caffè Americano",
"photos": {
"squarePhoto": "photo.jpg"
}
}, {
"index": 3546754,
"parentCategory": "Espresso",
"name": "Caffè Latte",
"photos": {
"squarePhoto": "photo.jpg"
}
}...
master.js
$.getJSON('menu.json', function(drinks) {
var output = "";
for (var i in drinks.menuItems) {
output += "<li>" + drinks.menuItems[i].name + "</li>";
}
//output+="</ul>";
document.getElementById("demo").innerHTML=output;
});
答案 0 :(得分:0)
您可以使用.sort方法按名称对此json对象进行排序。
希望此代码段有用
var o={ "menuItems": [
{
"index": 12432564,
"parentCategory": "Espresso",
"name": "Caffè Latte",
"photos": {
"squarePhoto": "photo.jpg"
}
}, {
"index": 3546754,
"parentCategory": "Espresso",
"name": "Caffè Americano",
"photos": {
"squarePhoto": "photo.jpg"
}
}
]
}
var _getMenuItem = o.menuItems;
var _sortedArray = _getMenuItem.sort(function(a,b){
return a.name >b.name ?1 :-1
})
console.log(_sortedArray);