【发布时间】:2017-03-03 02:13:49
【问题描述】:
我有一个需要按值排序的大对象,所以它按降序排列(范围是7-2)。目前,我不确定真正处理排序顺序的是什么,尽管我认为有一些逻辑,但对我来说似乎相当随机。
这是数据的一个示例子集:
property_list = {
1 : {
description : '...',
specs : {
bedroom_number: 7
}
},
2 : {
description : '...',
specs : {
bedroom_number: 3
}
},
3 : {
description : '...',
specs : {
bedroom_number: 5
}
}
}
所以我需要按specs.bedroom_number 重新排序,以便它们按照卧室编号值排列为7、5、3。
这种排序可能吗?还是需要某种循环来处理对象并将每个对象添加到一组新数据中?
【问题讨论】:
-
对象没有顺序。您可以对数组中对象的 键 进行排序,使用它,或者您可以将数据存储在数组中而不是对象中。
-
@MikeC 所以这只能通过数组实现?数组是如何排序的?
-
如果您将它们放在一个数组中,您可以使用
sort函数。将您自己的排序函数传递给它,以便您比较spec.bedroom_number值。我发布的链接显示了如何编写自己的排序函数的示例。
标签: javascript sorting object