javascript第六天

来源:互联网 发布:cydia红包软件源 编辑:程序博客网 时间:2024/05/20 23:34

排序:arr.sort();默认按字符串升序排列

自定义排序:2步:Setp1:定义比较器函数!

什么是比较器函数?定义任意两值比较策略的方法 

function compare(a,b){

return a-b;

}

如果返回>0数,a>b;如果返回<0数,a<b;如果刚好=0,a=b

Setp2:将比较器函数传递给sort方法!如何将方法作为参数传递?

js中方法也是一个对象!方法名就是指向方法对象的变量名!function compare(a,b){return a-b;}

//可以定义在使用前后的任何位置,原因:var 声明和function声明自动提前!相当于:var compare = new Function("a","b","return a-b");

//必须定义在使用之前!原因是仅声明提前,赋值不提前!

arr.sort(compare);注意!将方法作为对象传递时,仅使用方法名,后不加圆括号。

排序算法:

降序:颠倒比较结果的正负,可以导致升序变降序

升序:function compareASC(a,b){return a-b;}

降序:function compareDESC(a,b){return -(a-b);}

0 0
原创粉丝点击