哈喽,朋友们!
今天分享的是数组去重的方法,先来看看数组对象的形式
下面是我想要的结果,把id一样的对象删除
方法一:使用.filter() 和.findIndex() 相结合的方法
使用 filter() 方法过滤掉重复的元素,使用 findIndex() 方法判断对象是否重复,代码如下:
方法二:使用.reduce() 方法和 .find() 相结合的方法
使用 reduce() 方法维护一个累加器遍历数组,通过find() 方法来判断是否重复,代码如下:
方法三:使用.forEach() 和.some() 相结合的方法
使用 forEach() 方法遍历数组,使用 some() 方法判断是否重复,代码如下:
方法四:使用 Map
使用 Map 结构去重对象数组时,需要借助 array.map() 函数将对象数组进行转换,代码如下:
方法五:使用Object.create()
使用Object.create(),按照对象的属性来判断是否重复,代码如下:
方法六:使用for const of 和 find 结合
1.创建一个空的唯一数组来存储唯一对象。
2.循环遍历数组中的对象。对于每个对象,如果它不是重复的,则将其添加到唯一数组。否则,忽略它。代码如下:
针对多个属性进行去重
仅当对象具有两个或多个具有相同值的属性时才将其视为重复对象,对于这种情况,我们可以将上述方法进行稍微调整就可以进行使用。
1.使用 .filter() 和 .findIndex() 相结合的方法尝试下,代码如下:
2.使用 for const of 和 find 结合的方法,也能实现同样的效果
结束语
今天的分享到此结束,如果你有其他的方法,欢迎大家在评论区补充,感谢大家的关注。