JavaScript数组去重方法:Set、filter、reduce、for循环
JavaScript 中实现去重有多种方法,以下是一些常见的方法:
- 使用 Set
使用 Set 对象可以很容易地实现去重,因为 Set 对象只能存储唯一的值。我们可以将数组转换为 Set 对象,然后将 Set 对象转换为数组,这样就能实现去重:
let arr = [1, 2, 2, 3, 3, 3];
let newArr = [...new Set(arr)];
console.log(newArr); // [1, 2, 3]
- 使用 filter
使用 filter 方法可以根据条件过滤出需要的元素,我们可以利用 filter 方法筛选出唯一的元素:
let arr = [1, 2, 2, 3, 3, 3];
let newArr = arr.filter((item, index, arr) => {
return arr.indexOf(item) === index;
});
console.log(newArr); // [1, 2, 3]
- 使用 reduce
使用 reduce 方法可以对数组中的元素进行操作,我们可以利用 reduce 方法将唯一的元素存储到一个新的数组中:
let arr = [1, 2, 2, 3, 3, 3];
let newArr = arr.reduce((prev, cur) => {
if (prev.indexOf(cur) === -1) {
prev.push(cur);
}
return prev;
}, []);
console.log(newArr); // [1, 2, 3]
- 使用 for 循环
使用 for 循环可以遍历数组中的每个元素,我们可以利用 for 循环将唯一的元素存储到一个新的数组中:
let arr = [1, 2, 2, 3, 3, 3];
let newArr = [];
for (let i = 0; i < arr.length; i++) {
if (newArr.indexOf(arr[i]) === -1) {
newArr.push(arr[i]);
}
}
console.log(newArr); // [1, 2, 3]
以上是一些常见的去重方法,根据具体的需求可以选择不同的方法。
原文地址: https://www.cveoy.top/t/topic/nmft 著作权归作者所有。请勿转载和采集!