首页 > 编程语言 > 详细

根据对象的某个属性排序

时间:2021-04-10 01:04:00      阅读:19      评论:0      收藏:0      [点我收藏+]

要根据对象的某个属性排序,首先要理解sort()方法的原理

  • sort()会改变原数组

  • sort()在不传入参数时默认升序排列

  • 若想自定义排序,如降序排列,按照对象某个属性排序等,就必须往sort()中传入一个回调函数作为参数

var arr = [
    {name:‘zopp‘,age:0},
    {name:‘gpp‘,age:18},
    {name:‘yjj‘,age:8}
];

//定义一个比较器
function compare(prop){
    // 默认传入两个参数,即为数组中要比较的两项
    return function(a,b){
        var value1 = a[prop];
        var value2 = b[prop];
        // 通过返回值的正负来排序,返回值必须是数字类型
        return value1 - value2;
    }
}
arr.sort(compare(‘age‘))
console.log(arr)

根据对象的某个属性排序

原文:https://www.cnblogs.com/jincanyu/p/14638985.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!