js对象数组去重最简单的方法
(实用版4篇)
目录(篇1)
1.背景介绍 
2.方法一:使用 Set 去重 
3.方法二:使用 Array.prototype.filter() 方法去重 
4.方法三:使用 duce() 方法去重 
5.总结
正文(篇1)
一、背景介绍 
在 JavaScript 编程中,我们常常需要对对象数组进行去重操作。本文将为大家介绍三种最简单的方法来实现对象数组的去重。
二、方法一:使用 Set 去重 
Set 是一种特殊的数据结构,可以接受一个数组作为参数,并将数组转换为 Set。由于 Set 中的元素是唯一的,因此我们可以利用这个特性来实现对象数组的去重。
示例代码: 
```javascript 
const arr = [ 
  { id: 1, name: "张三" }, 
  { id: 2, name: "李四" }, 
  { id: 1, name: "张三" }, 
]
;
const uniqueArr = [...new Set(arr)]; 
console.log(uniqueArr); 
```
三、方法二:使用 Array.prototype.filter() 方法去重 
Array.prototype.filter() 方法可以创建一个新数组,新数组中的元素是通过检查原始数组中的每个元素并满足指定条件的元素。我们可以利用这个方法来去除对象数组中的重复元素。
示例代码: 
```javascript 
const arr = [ 
  { id: 1, name: "张三" }, 
  { id: 2, name: "李四" }, 
  { id: 1, name: "张三" }, 
];
const uniqueArr = arr.filter((item, index) => arr.indexOf(item) === index); 
console.log(uniqueArr); 
```
四、方法三:使用 duce() 方法去重 
duce() 方法可以对数组进行归约操作,从而创建一个新数组。我们可以利用这个方法来去除对象数组中的重复元素。
示例代码: 
```javascript 
const arr = [ 
  { id: 1, name: "张三" }, 
  { id: 2, name: "李四" }, 
  { id: 1, name: "张三" }, 
];
const uniqueArr = duce((accumulator, item) => { 
  if (!accumulator.some(el => el.id === item.id)) { 
    accumulator.push(item); 
  } 
  return accumulator; 
}, []); 
console.log(uniqueArr); 
```
五、总结 
本文介绍了三种最简单的方法来实现对象数组的去重:使用 Set 去重、使用 Array.prototype.filter() 方法去重和使用 duce() 方法去重。
目录(篇2)
filter过滤对象数组1.背景介绍 
2.方法一:使用 Set 去重 
3.方法二:使用 indexOf 去重 
4.方法三:使用 includes 去重 
5.方法四:使用 map 去重 
6.总结
正文(篇2)
一、背景介绍 
在 JavaScript 编程中,我们常常需要对数组进行去重操作。数组去重可以减少代码的冗余,提高程序的执行效率。本文将为大家介绍几种简单的 JS 对象数组去重方法。
二、方法一:使用 Set 去重 
Set 是一种特殊的数据结构,可以接受一个数组作为参数,并将数组转换为 Set。由于 Set 中的元素是唯一的,因此可以实现数组的去重。
示例代码: 
```javascript 
const arr = [1, 2, 3, 3, 4, 5, 5]; 
const uniqueArr = [...new Set(arr)]; 
console.log(uniqueArr); // 输出:[1, 2, 3, 4, 5] 
```
三、方法二:使用 indexOf 去重 
通过遍历数组,使用 indexOf 方法查元素在数组中的位置,如果不存在,则将该元素添加到新的数组中。这样可以实现数组的去重。
示例代码: 
```javascript 
const arr = [1, 2, 3, 3, 4, 5, 5]; 
const uniqueArr = arr.filter((item, index) => arr.indexOf(item) === index); 
console.log(uniqueArr); // 输出:[1, 2, 3, 4, 5] 
```
四、方法三:使用 includes 去重 
使用 includes 方法判断数组中是否包含某个元素,如果不包含,则将该元素添加到新的数组中。这样可以实现数组的去重。
示例代码: 
```javascript 
const arr = [1, 2, 3, 3, 4, 5, 5]; 
const uniqueArr = arr.filter(item =>!arr.includes(item)); 
console.log(uniqueArr); // 输出:[1, 2, 3, 4, 5] 
```
五、方法四:使用 map 去重 
使用 map 方法对数组进行遍历,返回一个新的数组。在新的数组中,重复的元素将被忽略。这样可以实现数组的去重。
示例代码: 
```javascript 
const arr = [1, 2, 3, 3, 4, 5, 5]; 
const uniqueArr = arr.map((item, index) => (index === arr.findIndex(i => i === item)? item : null)); 

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。