以下是一个示例代码,它演示了如何按不同键的特定值对对象数组进行排序:
// 定义对象数组
const objArray = [
{ name: 'John', age: 25 },
{ name: 'Steve', age: 32 },
{ name: 'Anna', age: 18 },
{ name: 'Peter', age: 45 }
];
// 按name属性进行排序
function sortByKey(array, key) {
return array.sort((a, b) => {
const x = a[key];
const y = b[key];
if (x < y) {
return -1;
}
if (x > y) {
return 1;
}
return 0;
});
}
const sortedByName = sortByKey(objArray, 'name');
console.log(sortedByName);
// 按age属性进行排序
const sortedByAge = sortByKey(objArray, 'age');
console.log(sortedByAge);
在上面的示例中,我们首先定义了一个包含多个对象的数组objArray。然后,我们定义了一个名为sortByKey的函数,该函数接受一个数组和要按其进行排序的键。函数内部使用Array.sort方法来排序数组。我们在比较函数中使用了键的值x和y来判断两个对象的大小关系。然后,我们分别使用name和age键对objArray进行排序,并将结果打印到控制台。
上一篇:按不同id合并对象数组