js学习总结----sort深入研究
回调函数:
//回调函数:把一个方法A当做参数值传递给另外一个函数B,在B执行的过程中,我们随时根据需求让A方法执行 function fn(callback){ callback(); } fn(function(){})
sort深入理解代码
var ary = [12,23,14,34,23,1,14,16,26,2]; ary.sort(function(a,b){ //a->每一次执行匿名函数的时候,找到的数组中的当前项 //b->当前项的后一项 return a - b;//升序 如果a>b,返回大于0的数,a和b交换位置 return b - a;//降序 如果b>a,返回的>0,a和b交换位置 //我return的是一个>0 / <=0的数,大于0 让a和b交换位置,小于等于0原来的位置不动 }) ary.sort(function(a,b){ return 1;//不管a和b谁大,每一次都返回一个恒大于0的数,也就是每一次a和b都要交换位置,最后的结果就是原有数组倒过来排列了==>reverse })
//多维数组的sort排序
var ary = [ {name:'小郭',age:78}, {name:'小将',age:13}, {name:'小王',age:107}, {name:'小陈',age:256} ] ary.sort(function(a,b){ return parseFloat(a.age) - parseFloat(b.age); }) ary.sort(function(a,b){ return a.name.localeCompare(b.name); })