方法一:
使用Set对象:利用Set对象对数组进行去,然后再转换回数组
let arr = [1, 2, 2, 3, 4, 4,5];
let uniqueArr = [...new Set(arr)];
console.log(uniqueArr) // [1, 2, 3, 4, 5]
方法二:
使用filter方法:利用filter方法和indexOf来过滤出唯一的元素
let arr = [1, 2, 2, 3, 4, 4, 5];
let uniqueArr = arr.filter((item, index) => {
return arr.indexOf(item) === index;
});
console.log(uniqueArr); // [1, 2, 3, 4, 5]
方法三:
使用reduce方法:利用reduce方法和includes来累积唯一的元素
let arr = [1, 2, 2, 3, 4, 4, 5];
let uniqueArr = arr.reduce((acc, current) => {
if (!acc.includes(current)) {
acc.push(current);
}
return acc;
}, []);
console.log(uniqueArr); // [1, 2, 3, 4, 5]
方法四:
当使用for循环实现数组去重时,可以通过遍历数组元素并在新数组中检查是否存在相同的元素来实现去重。下面是一个使用for循环实现数组去重的示例
在下列示例中,我们遍历原始数组
arr
,并使用indexOf
方法来检查元素是否已经存在于uniqueArr
中,如果不存在则将其添加到uniqueArr
中,这样就实现了数组去重。这是一种简单但有效的使用for循环实现数组去重的方法
function uniqueArray(arr) {
let uniqueArr = [];
for (let i = 0; i < arr.length; i++) {
if (uniqueArr.indexOf(arr[i]) === -1) {
uniqueArr.push(arr[i]);
}
}
return uniqueArr;
}
let arr = [1, 2, 2, 3, 4, 4, 5];
let result = uniqueArray(arr);
console.log(result); // [1, 2, 3, 4, 5]