长风破浪会有时
直挂云帆济沧海

js对象数组如何去重?

const arr = [
  { id: 1, a: 1 },
  { id: 2, a: 2 },
  { id: 3, a: 3 },
  { id: 1, a: 4 },
];
//先迭代,在查看是否包含指定的值
const result = arr.reduce((total,currentValue) => {    
        //total为返回值,currentValue为当前值
    const ids = total.map(item => item.id);    
    //如果ids里面没有包含currentValue的值,那么就return一个数组,加上当前值currentValue
    return ids.includes(currentValue.id) ? total: [...total, currentValue];
}, []);
console.log(result);

//new Set()方法;
let arr = [1, 2, 2, 3];
let set = new Set(arr);
let newArr = Array.from(set);
console.log(newArr); // [1, 2, 3]
赞(1) 打赏
未经允许不得转载:阿锋哥前端开发经验分享 » js对象数组如何去重?
分享到: 更多 (0)

几百块就能做营销型企业网站?

查看详情

可怜可怜作者吧

支付宝扫一扫打赏

微信扫一扫打赏