js数组去重
时间: 2023-06-21 11:15:28 浏览: 102
可以使用 Set 数据结构来实现数组去重。Set 只会存储不重复的值,因此将数组转换为 Set 后再转回数组即可去重。
例如,假设有如下数组:
```
const arr = [1, 2, 2, 3, 4, 4, 5];
```
可以使用以下代码将其去重:
```
const uniqueArr = Array.from(new Set(arr));
console.log(uniqueArr); // [1, 2, 3, 4, 5]
```
也可以使用 Array.prototype.filter() 方法来实现数组去重:
```
const uniqueArr = arr.filter((item, index) => arr.indexOf(item) === index);
console.log(uniqueArr); // [1, 2, 3, 4, 5]
```
相关问题
js 数组去重id一样的
对JavaScript数组去重,可以使用以下方法来去重id一样的元素:
1. 使用Set数据结构:Set是ES6中引入的新的数据结构,它可以自动过滤重复的元素。可以通过将数组转换为Set,然后再将Set转换回数组来实现去重。例如:
```javascript
const arr = [1, 2, 2, 3, 4, 4];
const uniqueArr = Array.from(new Set(arr));
console.log(uniqueArr); // [1, 2, 3, 4]
```
2. 使用filter方法和indexOf:使用filter方法结合indexOf方法来筛选出唯一的元素。例如:
```javascript
const arr = [1, 2, 2, 3, 4, 4];
const uniqueArr = arr.filter((item, index) => arr.indexOf(item) === index);
console.log(uniqueArr); // [1, 2, 3, 4]
```
3. 使用reduce方法:使用reduce方法来遍历数组,将不重复的元素添加到一个新数组中。例如:
```javascript
const arr = [1, 2, 2, 3, 4, 4];
const uniqueArr = arr.reduce((result, item) => {
if (!result.includes(item)) {
result.push(item);
}
return result;
}, []);
console.log(uniqueArr); // [1, 2, 3, 4]
```
以上是三种常用的方法来去重id一样的元素。根据不同的需求和数据类型,可以选择适合的方法进行数组去重。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [es6 数组去重_JS数组去重的9种方法(包括去重NaN和复杂数组类型)](https://blog.csdn.net/weixin_39556590/article/details/110184997)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]
js数组去重 new set方法
对于JavaScript中的数组去重,可以使用ES6中引入的Set数据结构来实现。Set是一种集合,它只存储唯一的值,不允许重复。可以通过将数组转换为Set,然后再将Set转换回数组来实现去重。
以下是使用Set方法实现数组去重的示例代码:
```javascript
const arr = [1, 2, 2, 3, 4, 4, 5];
const uniqueArr = [...new Set(arr)];
console.log(uniqueArr); // 输出:[1, 2, 3, 4, 5]
```
在上面的代码中,首先将数组`arr`转换为Set对象,然后通过扩展运算符(...)将Set对象转换回数组。这样就得到了去重后的数组`uniqueArr`。
需要注意的是,Set中存储的值是根据严格相等运算符(===)进行比较的,因此对于引用类型的元素,只有当它们引用同一个对象时才会被视为重复。
希望能帮到你!如有任何疑问,请随时提问。
阅读全文