我想知道如何基于每个对象内的数组来缩短对象,这里是我的数组对象:
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},
}
};
请让我知道如何做到这一点,非常感谢任何帮助:)
答案 0 :(得分:1)
您无法对对象的属性进行排序,因为属性没有订单。而且也没有用。迭代属性不会按照您设置的顺序给出它们。
最好将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);