数组的乱序排序和按序排序

136 阅读1分钟
//数组乱序排列
window.ARRAYRANDOMSORT = function(arr){
        let newarr = COPYDATA(arr);
        newarr.sort(function(){
                return Math.random() - 0.5;
        });
        return newarr;
};
//数组按规则排序,isMaxToMin为false则从小到大排序,否则从大到小,按key排序相同时再以id从小到大排序
window.ARRAYSORT = function(arr,key,isMaxToMin){
        let newarr = COPYDATA(arr);
        newarr.sort((a,b)=>{
            if(isMaxToMin){
                if(a[key] == b[key]){
                    return a.id- b.id;
                }
                return b[key] - a[key];
            }else {
                if(a[key] == b[key]){
                    return a.id- b.id;
                }
                return a[key] - b[key];
            }
        });
        return newarr;
};