Javascript。按属性x对对象数组进行排序

Javascript。按属性x对对象数组进行排序,javascript,arrays,sorting,object,Javascript,Arrays,Sorting,Object,我想一个接一个地绘制按y值排序的对象,这样“更近”的对象就不会在y值较低的对象后面绘制。我有这样的数组: List.list = [ 'idofobject' : { x: 20, y: 28 }, 'otheridofobject' : { x: 20, y: 23 }, ]; 如何按对象y值对其进行排序?我试图像普通的对象数组一样对其进行排序,但在本例中,我在属性之前有对象id,所以这是不可能的。如何在不删除对象id的情况下执行此操作 您可以像这样使用Array

我想一个接一个地绘制按y值排序的对象,这样“更近”的对象就不会在y值较低的对象后面绘制。我有这样的数组:

 List.list = [
 'idofobject' : {
  x: 20,
  y: 28
 },
 'otheridofobject' : {
  x: 20,
  y: 23
 },

];

如何按对象y值对其进行排序?我试图像普通的对象数组一样对其进行排序,但在本例中,我在属性之前有对象id,所以这是不可能的。如何在不删除对象id的情况下执行此操作

您可以像这样使用
Array.Prototype.sort
函数:

List.list.sort(function(a, b) {
  return a.y - b.y;
});
这将使用自定义函数进行排序


如果需要更多信息,请查看。

您可以使用
Array.Prototype.sort
函数,如下所示:

List.list.sort(function(a, b) {
  return a.y - b.y;
});
这将使用自定义函数进行排序

如果您需要更多信息,请查看。

一行

list.sort((obj1, obj2) => obj1.y - obj2.y);
一行

list.sort((obj1, obj2) => obj1.y - obj2.y);

如果需要下划线,可以使用


如果需要,可以使用下划线


您的List.List不正确,但这是您想要的答案:数组不能有键。您的列表是一个语法错误。Hmmm,但它运行良好。我只是不能排序:/如果我将[]更改为{},我可以排序吗?您的List.List不正确,但这是您想要的答案:数组不能有键。您的列表是一个语法错误。Hmmm,但它运行良好。我就是不能排序:/如果我把[]改为{},我能排序吗?只有链接的答案没有什么价值。基于链接提供相关代码,仅使用链接来支持答案中的实际内容OK,我认为链接中的代码更清晰是不可能的。但我感谢你的评论。只有链接的答案没有什么价值。基于链接提供相关代码,仅使用链接来支持答案中的实际内容OK,我认为链接中的代码更清晰是不可能的。但我感谢你的评论。