根据数组中对象的某个属性值排序

 ➢ 排序函数

attr 排序的属性 如number属性

rev true表示升序排列,false降序排序

sortFun: function(attr,rev){
        //第二个参数没有传递 默认升序排列
        if(rev ==  undefined){
            rev = 1;
        }else{
            rev = (rev) ? 1 : -1;
        }
        
        return function(a,b){
            a = a[attr];
            b = b[attr];
            if(a < b){
                return rev * -1;
            }
            if(a > b){
                return rev * 1;
            }
            return 0;
        }
    }
​复制代码
➢ 使用排序

要排序的数组

let arrData=[
    {
        name:`一`,
        number:1,
    },
    {
        name:`二`,
        number:2,
    }
]复制代码

排序方法

参数为排序的属性名称即可

arrData.sort(this.sortFun(`number`))复制代码


转载于:https://juejin.im/post/5c2fe851f265da61223a7c9d

你可能感兴趣的:(根据数组中对象的某个属性值排序)