数组去重,数组对象去重

本文介绍了如何使用ES6的新特性,如Set和reduce,来实现数组去重和对象去重。数组去重通过Set数据结构,对象去重则是根据对象的值进行唯一性判断。通过实例展示了如何利用这些方法简化代码并提高效率。
摘要由CSDN通过智能技术生成

数组去重,运用ES6语法

let arr = [1,2,3,4,5,6,1,2,3]
console.log([...new Set(arr)]);// [1, 2, 3, 4, 5, 6]

数组对象去重,通过对象中的值去重,可选值,实际是根据reduce

    let arr = [
      { id: 0, name: "猴子" },
      { id: 1, name: "李白" },
      { id: 2, name: "小乔" },
      { id: 3, name: "貂蝉" },
      { id: 1, name: "上官" },
      { id: 2, name: "昭君" },
      { id: 3, name: "小乔" },
    ];
    let obj = {};
    let newArr = arr.reduce((cur, next) => {
      obj[next.name] ? "" : (obj[next.name] = true && cur.push(next));
      return cur;
    }, []); 
    console.log(newArr);
[]{id: 0, name: "猴子"},{id: 1, name: "李白"},{id: 2, name: "小乔"},{id: 3, name: "貂蝉"},{id: 1, name: "上官"},{id: 2, name: "昭君"}]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值