对于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.以上代码经测试有效
网友评论