在javascript中对嵌套json数组对象进行排序
需要对嵌套的json对象进行排序在javascript中对嵌套json数组对象进行排序,javascript,arrays,json,sorting,nested,Javascript,Arrays,Json,Sorting,Nested,需要对嵌套的json对象进行排序 像上面的那个吗?你现在可能已经得到答案了 var dataSource = ({ "Items": ({ "Deserts": ({}), "Veg": ({ "VegPulao": "Veg Pulao", "PalakPaneer": "Palak Paneer", "PaneerButterMasala": "Paneer Butter Masala" }), "Chicke
像上面的那个吗?你现在可能已经得到答案了
var dataSource = ({
"Items": ({
"Deserts": ({}),
"Veg": ({
"VegPulao": "Veg Pulao",
"PalakPaneer": "Palak Paneer",
"PaneerButterMasala": "Paneer Butter Masala"
}),
"Chicken": ({
"Tandoori": "Tandoori special"
}),
"Hot drinks": ({
"Coffe": ({ "Hot": "Hot Coffe", "Medium": "Medium", "Others": ({ "Iris": "Iris Coffe", "Capuccino": "Capuccino" }) }),
"Tea": ({ "Red": "Red Tea", "Black": "Black Tea" }),
"Hot BadamMilk": "Hot Badam Milk",
"Hot Bornvita": "Hot Bornvita",
"Hot Milk": "Hot Milk"
}),
"Juice": ({
"Mango": "Mango",
"Berry": "Berry",
"Grapes": "Grapes",
"Wine": ({
"Rose": "Rose",
"Red wine": "Red",
"Apple": "Apple",
"Hard drinks": ({
"Royal challenge": "Royal challenge",
"Blender's Pride": "Blender's Pride"
})
})
})
})
});
它是按ASCII排序的,不区分大小写,您必须编写自定义排序。所有的括号是什么?它们是方括号吗?(还有,这不是JSON。JSON是数据的字符串表示;没有JSON对象。)对嵌套数组进行排序是什么意思?如果删除额外的参数,则这些是嵌套对象,并且对象没有排序顺序。我没有看到任何数组。抱歉。。它只是一个嵌套对象。我想把它分类。。如果有人帮我把那些乱放的东西拿走,我的眼睛会疼的
function rFun(obj, newObj){
Object.keys(obj).sort().forEach(key=>{
if(typeof obj[key] === 'object'){
newObj[key] = {};
newObj[key] = rFun(obj[key], newObj[key]);
} else {
newObj[key] = obj[key];
}
});
return newObj;
}
JSON.stringify(rFun(dataSource, {}));