sort()的二次应用

2017-07-01  本文已影响0人  后知不觉1

对于sort()排序的二次应用

1.使用场景

只是为了方便数组,数组对象的排序。在工作中数组对象排序的时候由于sort()函数的限制只能排制定的属性,这个二次应用能够在你传入相应的对象属性就可以实现,不用去看排序的相关算法,只是sort函数的调用

2.上代码

        (function(){
            var a = [12,32,1,4,54];
            var b = [
              {age:56},
              {age:13},
              {age:1},
              {age:34},
              {age:20},
              {age:97}

          ];

    //绑定为全局
    window.define_sort = define_sort;
    function define_sort(obj,type,_attrs) {
        //obj参数,你将要进行的排序数组对象
       //type参数  只能为字符串 Array 或者 obj,Array排序的是只是数组,obj排序的是数据对象,这时候必须要传_attrs参数,数组对象排序的属性
        var sorted = null;
        function compare1(a,b) {

            return a[_attrs] - b[_attrs];
        }
        function compare2(a,b) {
            return a - b;
        }
        if(type ==='Array'){
            sorted = obj.sort(compare2);
        }else if(type ==='obj'){
            sorted = obj.sort(compare1);
        }

        return sorted;
    }
})()

3.以上代码经测试有效

上一篇下一篇

猜你喜欢

热点阅读