Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/122.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 按整数值对对象重新排序_Javascript_Sorting_Object - Fatal编程技术网

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编号
值。我发布的链接展示了一个如何编写自己的排序函数的示例。很高兴能提供帮助