自定义sort函数排序标准

版权声明:内容多为自言自语,请自行判断有无价值。 https://blog.csdn.net/weixin_41702247/article/details/83303074
function compareStandard(key){
    return function(obj1,obj2){
        let val1=obj1[key];
        let val2=obj2[key];

        if (val1<val2) {
            return -1;
        }else if (val1>val2) {
            return 1;
        }else{
            return 0;
        }
    }
}

const arr=[
    {name:'Tom',age:22,height:170},
    {name:'Mary',age:21,height:165},
    {name:'Mike',age:18,height:180}
];

arr.sort(compareStandard('age'));    

//0: {name: "Mike", age: 18, height: 180}
//1: {name: "Mary", age: 21, height: 165}
//2: {name: "Tom", age: 22, height: 170}

arr.sort(compareStandard('height'));

//0: {name: "Mary", age: 21, height: 165}
//1: {name: "Tom", age: 22, height: 170}
//2: {name: "Mike", age: 18, height: 180}

猜你喜欢

转载自blog.csdn.net/weixin_41702247/article/details/83303074
今日推荐