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

  • 处理需求:下拉框多选去重等。
  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()) //控制台打印查看
posted @ 2022-03-10 14:15  喜欢Tb  阅读(75)  评论(0)    收藏  举报  来源