首页 > 其他分享 >利用lodash对(对象)数组去重

利用lodash对(对象)数组去重

时间:2023-01-14 14:55:24浏览次数:103  
标签:arr name 对象 数组 year id lodash

使用场景:
根据数(对象)组中的id或者其他属性去重,或者对象中的所有属性值相同的去重。
传统方法:
通过数组的some进行逐项判断;
用了lodash之后发现还是很香的。

import { isEqual, uniqWith, uniqBy } from 'lodash'
let arr = [
{id: 1, name: '冬雨', year: 18},
{id: 2, name: '夏洛', year: 19},
{id: 1, name: '秋雅', year: 20},
{id: 3, name: '冬梅', year: 21},
{id: 3, name: '冬雨', year: 18},
]
console.log('原数组:', arr);
console.log('根据id去掉相同的元素:', uniqBy(arr, 'id'));
console.log('检查数组每一项进行去重:', uniqWith(arr, isEqual));

————————————————
版权声明:本文为CSDN博主「_处女座程序员的日常」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_42931285/article/details/124834313

标签:arr,name,对象,数组,year,id,lodash
From: https://www.cnblogs.com/fdxjava/p/17051861.html

相关文章

  • c++ 数组
              ......
  • 数组元素移动到指定位置
    letdata=[{name:1},{name:2},{name:3}]//arr:原数组,a:某个对象当前位置,b:某个对象想要移动到的位置functionMove(arr,a,b){letarr_temp=[].concat(arr);......
  • php 将二维数组处理成以某一列为key,某一列为value的一维数组
    $list=[0=>['id'=>1001,'name'=>'张三'],1=>['id'=>2091,'name'=>'李四']];array_combine(arr......
  • Java数组动态扩容和动态缩减
    数组动态扩容:packagecom;importjava.lang.String;importjava.util.Scanner;publicclassLinghu{publicstaticvoidmain(String[]args){intarr[]={1,2,3......
  • JS_6_自定义对象
    JS中万事万物皆对象,灵活! 对象:可以调用不存在的属性方法(自动扩充),值为undefined。可以直接新增属性方法。创建自定义对象://创建一个自定义对象var对象名......
  • 数组
    数组定义数组是相同类型数据的有序集合数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成其中,每个数据称作一个数组元素,每个数据元素可以通过一......
  • ORACLE对象-高级(视图、序列、索引)
    ORACLE对象-高级一、视图(一)什么是视图视图和表的区别:视图是实体表的映射,视图和实体表区别就是于视图中没有真实的数据存在。视图中存储的是SQL语句什么时候使用视图:1.为......
  • 数组
    数组什么是数组?数组的定义:数组是相同类型数据的有序集合.数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成。其中,每一个数据称作一个数组元......
  • 【C#进阶】委托的本质:方法对象的应用
    一、前言  翻回之前写的博客,前期写的结构确实差很多,  这次细看了《委托那些事(一)、(二)》,忍不住重新写一下,之前把简单的事情复杂化了。  为什么现在思维不一样......
  • JavaScript学习笔记—对象
    对象中可以存储多个各种类型的数据,对象中存储的数据成为属性添加属性或修改属性值:对象.属性名=属性值读取属性:对象.属性名,如果读取对象中没有的属性返回undefined删......