根据内部数组对对象进行排序

Sort Object based on Array indise

我想知道如何根据每个对象中的数组来缩短对象,这是我的数组对象:

var cars = {
  'Ferrari': {
    'Ascari': {color: 'Yellow', year: 2005},
    'Enzo': {color: 'Red', year: 2003}
  }
};

我想根据汽车年份对它们进行排序,所以我想要这样的输出:

var cars = {
  'Ferrari': {
    'Enzo': {color: 'Red', year: 2003}
    'Ascari': {color: 'Yellow', year: 2005},
  }
};

请告诉我该怎么做,非常感谢您的帮助:)

您无法对对象的属性进行排序,因为属性没有顺序。而且也没有用。遍历属性不会按照您设置的顺序给出它们。

最好用cars作为数组,用sort排序

var cars = {
    'Ferrari': [
        { name: 'Ascari', color: 'Yellow', year: 2005 },
        { name: 'Enzo', color: 'Red', year: 2003 }
    ]
};

cars['Ferrari'].sort((a,b) => a.year - b.year);
console.log(cars);