分享一个根据某一个key排序的小方法

153 阅读1分钟
function sortByKey(arr,key,order){ 
   for(i=0;i<arr.length;i++){
        for(j=i+1;j<arr.length;j++){
            if(order=='desc'){
                if(parseFloat(arr[i][key])<=parseFloat(arr[j][key])){
                    var min=arr[i];
                    arr[i]=arr[j];
                    arr[j]=min;
                }            
            }else{
               if(parseFloat(arr[i][key])>=parseFloat(arr[j][key])){
                    var max=arr[i];
                    arr[i]=arr[j];
                    arr[j]=max;
                }
            }
        }
    }
    return arr;
}。这个有问题
--------------------------------------------------------------------------------------------
这个可以
var datalist = [
        { type: 'Zach', value: 26, tag: 1 },
        { type: 'Tom', value: 29, tag: 2 },
        { type: 'Kate', value: 30, tag: 3 },
        { type: 'Gates', value: 31, tag: 4 },
        { type: 'Smith', value: 22, tag: 5 },
        { type: 'Jeny', value: 20, tag: 6 }];
datalist = datalist .sort((a, b) => a.value- b.value);