我在JS中有这个对象数组:
const testObject = [
{
name: "Grinsendes Gesicht",
icon: "?",
used: 3,
},
{
name: "Hundegesicht",
icon: "?",
used: 8
},
];
我现在正在寻找一个选项来对我的对象数组进行排序,该对象数组按每个对象中的已用计数器降序排列,以便对其进行排序后看起来像这样:
const testObject = [
{
name: "Hundegesicht",
icon: "?",
used: 8
},
{
name: "Grinsendes Gesicht",
icon: "?",
used: 3,
}
];
我已经尝试过了,但是无法正常工作:
const testObject = [
{
name: "Grinsendes Gesicht",
icon: "?",
used: 3,
},
{
name: "Hundegesicht",
icon: "?",
used: 8
},
];
console.log( testObject );
testObject.sort( function ( a, b ) {
return a.used - b.used;
} );
console.log( testObject );
答案 0 :(得分:4)
要下降,你要走相反的方向
const testObject = [
{
name: "Grinsendes Gesicht",
icon: "?",
used: 3,
},
{
name: "Hundegesicht",
icon: "?",
used: 8
},
];
console.log( testObject );
testObject.sort( function ( a, b ) {
return b.used - a.used;
} );
console.log("Descending array:")
console.log( testObject );
答案 1 :(得分:0)
您步入正轨!排序方法是您要使用的方法,遇到的问题是返回值。
基本上,您应该返回的是:
您可以阅读更多here。
如果您尝试对这种降序进行排序,则需要与return语句中当前的内容相反:
testObject.sort( function ( a, b ) { return b.used - a.used } );