根据对象的某个属性值进行排序

根据isSortField进行排序,如果某个数据isSortField有值,则将其插入到name=isSortField的数据后并删除原数据

嵌套太多层了 还没想出优化的方法  /(ㄒoㄒ)/~~

数据结构如下所示:

obj为上图数据 

Object.keys(obj).forEach(item => {
   if (obj[item].find(p=>p.isSortField)) {
      for (let l=0;l<obj[item].length;l++) {
          if (obj[item][l].isSortField !="") {
              let arr = obj[item];
              for (let l=0;l<arr.length;l++) {
                   let index = arr.indexOf(arr.find(p=>p.name==arr[l].isSortField))
                   if (arr[l].isSortField !="") {
                       arr.splice(index+1, 0, arr[l])
                       l<index ? arr.splice(l, 1) : arr.splice(l+1, 1)
                   } 
              }
          }
       }
    }
})

csdn文章推荐受影响解决办法10个字10行

csdn文章推荐受影响解决办法10个字10行

csdn文章推荐受影响解决办法10个字10行

csdn文章推荐受影响解决办法10个字10行

csdn文章推荐受影响解决办法10个字10行

csdn文章推荐受影响解决办法10个字10行

csdn文章推荐受影响解决办法10个字10行

csdn文章推荐受影响解决办法10个字10行

csdn文章推荐受影响解决办法10个字10行

csdn文章推荐受影响解决办法10个字10行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值