vue中,为json数组(数组中多个对象的数据)做去重

本文探讨了两种JavaScript中处理数组去重的方法,包括利用对象属性的唯一性进行去重以及使用filter方法结合多个参数判断的独特技巧。这两种方法在处理包含复杂对象的数组时尤为实用,确保了下拉框多选的选项不重复。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 处理需求:下拉框多选去重等。
  let array = [
        {
            name:'张三',
            age:18,
            sex:'男'
        },
        {
            name:'王五',
            age:18,
            sex:'男'
        },
        {
            name:'赵六',
            age:18,
            sex:'男'
        },
        {
            name:'王五',
            age:18,
            sex:'女'
        },
        {
            name:'赵六',
            age:18,
            sex:'女'
        },
        {
            name:'张三',
            age:18,
            sex:'女'
        },
        {
            name:'李四',
            age:18,
            sex:'男'
        },
        {
            name:'李四',
            age:18,
            sex:'女'
        },
      ]
//方法一,只判断一个参数
      var hash = {};
      let newarr = array.reduce((item, next) => {
      //name更换成自己的参数
        hash[next.name] ? "" : hash[next.name] = true && item.push(next);
        return item;
      },[]);
console.log(newarr) //控制台打印查看
//方法二,多个参数判断
 var c = array.filter(function (item, index) {
  var _index = array.findIndex(function (_item) {
  // 条件根据自身需求更改
     return item.name == _item.name && item.age == _item.age && item.sex == _item.sex;
   });
     return index == _index;
  });
  console.log(c.reverse()) //控制台打印查看
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值