⏹待排序的数据
// 准备一个人员列表
const peopleList = [
{ name: 'Foo', age: 42 },
{ name: 'Bar', age: 24 },
{ name: 'Fuzz', age: 36 },
{ name: 'Baz', age: 32 },
];
⏹定义一个正向排序的函数
const sortBy = (arr, k) => arr.concat().sort((a, b) => (a[k] > b[k] ? 1 : a[k] < b[k] ? -1 : 0));
⏹根据年龄正向排序实践
const sortedList = sortBy(peopleList, 'age');
console.log(sortedList);
/*
[
{
"name": "Bar",
"age": 24
},
{
"name": "Baz",
"age": 32
},
{
"name": "Fuzz",
"age": 36
},
{
"name": "Foo",
"age": 42
}
]
*/
⏹根据年龄逆向排序实践
// ⭕如果需要逆向排序的话,只需要加一个 .reverse()反转list中的所有元素
const sortedListReverse = sortBy(peopleList, 'age').reverse();
console.log(sortedListReverse);
/*
[
{
"name": "Foo",
"age": 42
},
{
"name": "Fuzz",
"age": 36
},
{
"name": "Baz",
"age": 32
},
{
"name": "Bar",
"age": 24
}
]
*/