Javascript 按整数值对对象重新排序
我有一个需要按值排序的大对象,因此它是按降序列出的(范围是Javascript 按整数值对对象重新排序,javascript,sorting,object,Javascript,Sorting,Object,我有一个需要按值排序的大对象,因此它是按降序列出的(范围是7-2)。目前,我不确定是什么在真正处理排序顺序,虽然我认为这是有逻辑的,但对我来说似乎是相当随机的 以下是数据的一个子集示例: property_list = { 1 : { description : '...', specs : { bedroom_number: 7 } }, 2 : { description : '...',
7-2
)。目前,我不确定是什么在真正处理排序顺序,虽然我认为这是有逻辑的,但对我来说似乎是相当随机的
以下是数据的一个子集示例:
property_list = {
1 : {
description : '...',
specs : {
bedroom_number: 7
}
},
2 : {
description : '...',
specs : {
bedroom_number: 3
}
},
3 : {
description : '...',
specs : {
bedroom_number: 5
}
}
}
因此,我需要按规格卧室编号
重新排序,以便根据卧室编号值将其排列为7
、5
、3
这种分类可能吗?还是需要某种循环来遍历对象并将每个对象添加到一组新的数据中?您可以从变量
属性列表中创建一个新的对象数组,然后使用以下命令按规格编号进行排序:
var property_list={1:{description:''.'规范:{卧室编号:7}},2:{description:'.'规范:{卧室编号:3},3:{description:'.'规范:{卧室编号:5}},
arr=对象
.keys(属性列表)
.map(功能(键){
返回属性列表[键];
})
.排序(功能(a、b){
返回b.规格卧室编号-a.规格卧室编号;
});
控制台日志(arr)代码>对象没有顺序。您可以在数组中对对象的键进行排序,也可以将数据存储在数组中而不是对象中。@MikeC所以这只能在数组中实现?如何使用数组进行排序?如果数组中有它们,则可以使用该函数。将其传递给您自己的排序函数,以便比较spec.u编号
值。我发布的链接展示了一个如何编写自己的排序函数的示例。很高兴能提供帮助