js数组排序

来源:互联网 发布:linux命令解压缩 编辑:程序博客网 时间:2024/06/08 12:37
  /* 数组排序
     * sortArr(arr,key,order)
     * arr : 必填,要进行排序的数组
     * order : 排序顺序(布尔值,true为从小到大,false为从大到小)
     * key : 排序依据(一维数组不填,二位数组为下标值,对象数组为对象key值)
     * 注意 : 返回新数组,不改变原数组
     * */
    mod.sortArr = function(arr, order, k) {
        if (!arr) {
            return;
        }
        var arr2 = [];
        for (var i = 0; i < arr.length; i++) {
            arr2[i] = arr[i]
        }
        if (order) {
            if (k) {
                arr2.sort(function(a, b) {
                    return a[k] - b[k];
                })
            } else {
                arr2.sort(function(a, b) {
                    return a - b;
                })
            }
        } else {
            if (k) {
                arr2.sort(function(a, b) {
                    return b[k] - a[k];
                })
            } else {
                arr2.sort(function(a, b) {
                    return b - a;
                })
            }
        }
        return arr2;
    }
0 0
原创粉丝点击