JS sory数组排序

类数组转换为数组

var utils = {
    listToArray: function (likeAry){
        var ary = [];
        try {
             ary = Array.prototype.slice.call(likeAry)
        } catch(e) {
            for(var i=0; i<likeAry.length; i++){
                ary[ary.length] = likeAry[i];
            }
        }
       return ary;
    }
}

sort深入研究

升序

var ary = [12, 23, 14, 34, 23, 1, 14, 16, 26, 2];
ary.sort(function(a, b){
    return a - b;
})

降序

ary.sort(function(a, b){
    return b -a;
})
  • return的是一个 >0 / <=的数,
    • 大于0让a和b交换一下位置,
    • 小于等于0原来的位置不动

按年龄升序

var ary = [
    {name: 'lemon1', age: 10},
    {name: 'aemon3', age: 50},
    {name: 'cemon2', age: 30},
    {name: 'demon0', age: 5},
]
ary.sort(function(a, b){
    return parseFloat(a.age) - parseFloat(b.age);
})

按字母表顺序

ary.sort(function(a, b){
    return a.name.localeCompare(b.name);
})

回调函数

把一个方法A当作参数值传递给另外一个函数B, 然后在B执行的过程中, 我们随时根据需求让A方法执行

function fn(callback){
    callback();
}
fn(function (){
});
原文地址:https://www.cnblogs.com/xiaoxu-xmy/p/13647123.html