1.先定义一个数组对象
let arr=[
{name:'李欣',age:'18'},
{name:'王钊',age:'15'},
{name:'李雪',age:'20'},
{name:'李逍遥',age:'26'},
{name:'景天',age:'12'},
{name:'赵灵儿',age:'14'},
{name:'王艺璇',age:'18'},
{name:'李紫',age:'24'},
];
2.写入数组对象的升序降序方法
//封装一个数组排序方法
function compare(key, desc) {
//key: 用于排序的数组的key值
//desc: 布尔值,为true是升序排序,false是降序排序
return function(a, b) {
let value1 = a[key];
let value2 = b[key];
if (desc == true) {
// 升序排列
return value1 - value2;
} else {
// 降序排列
return value2 - value1;
}
};
}
//然后使用数组排序方法
// arr.sort(compare('age',false));
console.log(arr.sort(compare('age',false))); //打印调用方法
3.最后实现的效果如下
注:如果有更好的方法,望大佬们提些意见