Js数组排序

文章展示了如何使用JavaScript对包含对象的数组进行排序,特别是根据对象的count字段进行升序排列。定义了一个compare函数,该函数接受排序字段和排序方式作为参数,然后在sort方法中应用,确保正确排序。
摘要由CSDN通过智能技术生成
let list = [
    {count: 20, name: '章三'},
    {count: 30, name: 'wangwu'},
    {count: 5, name: 'list'}
]
// 用count 字段做升序排序
let d = list.sort(compare('count', true))
console.log(d) // [{count: 5, name: '章三'}, {count: 20, name: 'list'}, {count: 30, name: 'wangwu'}]

/** 两个参数: 参数1 是排序用的字段, 参数2 是:是否升序排序 true 为升序,false为降序*/
function compare (attr,rev) {
      // console.log(attr, rev)
      if(rev ==  undefined){
          rev = 1;
      }else{
          rev = (rev) ? 1 : -1;
      }
      return (a,b) => {
          a = a[attr];
          b = b[attr];
          if(a < b){
              return rev * -1;
          }
          if(a > b){
              return rev * 1;
          }
          return 0;
      }
   },

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值