JavaScript 数组去重方法:Set、遍历、filter 和 reduce
JavaScript 数组去重可以使用 Set 数据结构或使用遍历数组的方式实现。
- 使用 Set 数据结构:
const arr = [1, 2, 3, 3, 4, 4, 5];
const uniqueArr = Array.from(new Set(arr)); // [1, 2, 3, 4, 5]
- 遍历数组方式:
const arr = [1, 2, 3, 3, 4, 4, 5];
const uniqueArr = [];
for (let i = 0; i < arr.length; i++) {
if (uniqueArr.indexOf(arr[i]) === -1) {
uniqueArr.push(arr[i]);
}
}
// [1, 2, 3, 4, 5]
- 使用 ES6 中的 filter 方法:
const arr = [1, 2, 3, 3, 4, 4, 5];
const uniqueArr = arr.filter((item, index, array) => {
return array.indexOf(item) === index;
});
// [1, 2, 3, 4, 5]
- 使用 ES6 中的 reduce 方法:
const arr = [1, 2, 3, 3, 4, 4, 5];
const uniqueArr = arr.reduce((prev, curr) => {
if (prev.indexOf(curr) === -1) {
prev.push(curr);
}
return prev;
}, []);
// [1, 2, 3, 4, 5]
原文地址: https://www.cveoy.top/t/topic/np2T 著作权归作者所有。请勿转载和采集!