let arr = [1, 1, 2, 3, 4, 4, 4, 3, 3, 6, 5]
// 1.Set去重
function unique(arr) {
console.log(Array.from(new Set(arr)))
}
unique(arr) //[ 1, 2, 3, 4, 6, 5 ]
// ------------------------------------
// 2. indexOf()去重
function unique1(arr) {
let arr1 = [];
let length = arr.length;
for (let i = 0; i < length; i++) {
if (arr1.indexOf(arr[i]) === -1) {
arr1.push(arr[i])
}
}
console.log(arr1)
}
unique1(arr) //[ 1, 2, 3, 4, 6, 5 ]
// ---------------------------------------
// 3.利用数组的includes去重
function unique2(arr) {
let arr_temp = [];
for (let i = 0, len = arr.length; i < len; i++) {
if (!arr_temp.includes(arr[i])) {
arr_temp.push(arr[i]);
}
}
console.log(arr_temp)
}
unique2(arr) //[ 1, 2, 3, 4, 6, 5 ]
// ------------------------------------------
// 4.利用数组的filter方法去重
function unique3(arr) {
// 如果新数组的当前元素的索引值 == 该元素在原始数组中的第一个索引,则返回当前元素
let arr_temp = arr.filter((item, index) => {
return arr.indexOf(item, 0) === index;
})
console.log(arr_temp)
}
unique3(arr) //[ 1, 2, 3, 4, 6, 5 ]
js数组去重的方法
最新推荐文章于 2023-09-04 15:29:20 发布