Javascript 使用来自对象的id进行排序

Javascript 使用来自对象的id进行排序,javascript,arrays,object,Javascript,Arrays,Object,嗨,我需要按catId对该对象进行排序: book { books : { 1: {id: 1, name: "javascript", catId: 2} 2: {id: 2, name: "ayat", catId: 1} 3: {id: 3, name: "olom", catId: 3} 4: {id: 4, name: "css", catId: 2} 5: {id: 5, name: "chap", catId: 1} } } 输出: book { books : { 2: {id

嗨,我需要按catId对该对象进行排序:

book {
books : {
1: {id: 1, name: "javascript", catId: 2}
2: {id: 2, name: "ayat", catId: 1}
3: {id: 3, name: "olom", catId: 3}
4: {id: 4, name: "css", catId: 2}
5: {id: 5, name: "chap", catId: 1}
}
}
输出:

book {
books : {
2: {id: 2, name: "ayat", catId: 1}
5: {id: 5, name: "chap", catId: 1}
4: {id: 4, name: "css", catId: 2}
1: {id: 1, name: "javascript", catId: 2}
3: {id: 3, name: "olom", catId: 3}
}
}
或者,例如,将{id:3,name:olom,catId:3}推送到一个空数组:

arrBooks [
{id: 2, name: "ayat", catId: 1}
{id: 5, name: "chap", catId: 1}
{id: 4, name: "css", catId: 2}
{id: 1, name: "javascript", catId: 2}
{id: 3, name: "olom", catId: 3}
]
您可以这样使用和:

常数书={ 书籍:{ 1:{id:1,name:javascript,catId:2}, 2:{id:2,姓名:ayat,catId:1}, 3:{id:3,name:olom,catId:3}, 4:{id:4,name:css,catId:2}, 5:{id:5,名称:chap,catId:1} } } const sortedbook=Object.valuesbook.books .sorta,b=>a.catId-b.catId
console.LogSortedBooks是否预订对象或数组?如果它是一个对象,这是不可能的。如果它是一个数组,则有数百个重复项作为输出对象或数组?如果对象大于你,则不能,如果数组大于你,则可以使用sort@Klimenkomud这是不可能的,因为键是integers@CodeManiac,我想要这样的输出数组:arrBooks[{id:2,name:ayat,catId:1}{id:5,name:chap,catId:1}{id:4,name:css,catId:2}{id:1,name:javascript,catId:2}{id:3,name:olom,catId:3}]object@CodeManiac是的,正是我想要这个答案:@f-CJ发布答案时,您会看到右下角有一个复选框,表示社区wiki标记,如果您想将答案添加为wiki,您可以看到