js,去除数组"a,b,d,d,c,d,d"中重复元素,并存入新的数组中
时间: 2024-10-17 09:12:38 浏览: 33
在JavaScript中,可以使用多种方法来移除数组中的重复元素并创建一个新的数组。以下是几种常见的解决方案:
1. **使用Set**(ES6特性):
```javascript
let arr = ["a", "b", "d", "d", "c", "d", "d"];
let uniqueArr = [...new Set(arr)];
```
`Set`是一种特殊的集合类型,它不允许有重复值。将数组转换为Set再转回数组,就得到了去重后的结果。
2. **使用filter() + indexOf()**:
```javascript
let arr = ["a", "b", "d", "d", "c", "d", "d"];
let uniqueArr = arr.filter((value, index, self) => {
return self.indexOf(value) === index;
});
```
`filter()`函数遍历数组,如果某个元素的索引首次出现,则保留该元素。
3. **使用reduce()**:
```javascript
let arr = ["a", "b", "d", "d", "c", "d", "d"];
let uniqueArr = arr.reduce((acc, curr) => acc.includes(curr) ? acc : [...acc, curr], []);
```
`reduce()`方法将数组转换为单个值,这里通过检查新数组(`acc`)是否已包含当前元素(`curr`)来进行判断。
阅读全文