js数组对象中查找重复的元素,并返回数组

getChongfu(list, field) {
      //数据
      const key = {} //存储的 key 是type的值,value是在indeces中对应数组的下标
      const indices = [] //数组中每一个值是一个数组,数组中的每一个元素是原数组中相同type的下标 
      list.map((item, index) => {
        //根据对应字段 分类(type)
        const type = item[field]
        const _index = key[type]
        if (_index !== undefined) {
          indices[_index].push(index)
        } else {
          key[type] = indices.length
          indices.push([index])
        }
      })
      // 归类结果
      const result = []
      indices.map((item) => {
        item.map((index) => {
          //result.push(List[index]) 相同项排序在一起
          //if (item.length > 1) {} 只要重复项
          //if (item.length == 1){} 只要单独项
          //我这里需要重复项 根据业务处理
          if (item.length > 1) {
            result.push(list[index])
          }
        })
      })
      //结果
      return result
    }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天气晚来秋~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值