JS中如何对数组和对象数组排序
更新:HHH   时间:2023-1-7


这篇文章主要介绍了JS中如何对数组和对象数组排序,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。

注意:sort()方法会改变原数组,默认按unicode码顺序排列

推荐js相关视频教程:course/list/17/type/2.html

一、js中sort方法实现数组排序

var arr = [2,3,13,17,4,19,1];
arr.sort() // [1, 13, 17, 19, 2, 3, 4]

若想对数组按照大小进行排序,则需要在js的sort()方法添加比较函数

var arr = [2,3,13,17,4,19,1];
arr.sort(function(a,b){ // 比较函数
   return b - a;    // 降序, 升序为 a - b 
})
console.log(arr) //  [19, 17, 13, 4, 3, 2, 1]

二、js的sort方法实现对象数组的排序

类似于数组中的用法

var arr = [
            { name:"小明", age:12 },
            { name:"小红", age:11 },
            { name:"小刚", age:15 },
            { name:"小华", age:13 }
        ];
        
function compare(p){ //比较函数
    return function(m,n){
        var a = m[p];
        var b = n[p];
        return a - b;
    }
}
arr.sort(compare("age"));
console.log(arr); 
//升序,结果: [{name: "小红", age: 11}, {name: "小明", age: 12}, {name: "小华", age: 13},

不足之处还望指出,不胜感激!

感谢你能够认真阅读完这篇文章,希望小编分享JS中如何对数组和对象数组排序内容对大家有帮助,同时也希望大家多多支持天达云,关注天达云行业资讯频道,遇到问题就找天达云,详细的解决方法等着你来学习!

返回web开发教程...