1.利用双重for循环去重
let arr[2,3,4,2,3,13,2,45]
function fn(arr ) {
let newarr = [],
for (let i=0; i<arr.length; i++)
{ for (let j=i+1; j<arr.length; j++) {
if (arr[i] === arr[j]) {
j = ++i;
} }
newarr.push(arr[i]) }
return newarr }
2.set
利用es6 新增 set类似一个数组特点是元素是唯一的,本身是一个构造函数
let arr[2,3,4,2,3,13,2,45]
fuction fn(array){
let a=new set(array)
//将其转化数组
return array.from(a)
}
fn(arr0
3.indexof
indexof组的indexOf()方法可返回某个指定的元素在数组中首次出现的位置如果没有则返回-1
let arr[2,3,4,2,3,13,2,45]
fuction fn(array){
let newarr=[]
for(let i=0;i<array.length;i++){
if(newarr.indexof(array[i])!==-1){
newarr.push(arrar[i])
}
}
}
fn(arr)
4 includes 去重
let arr[2,3,4,2,3,13,2,45]
fuction fn(array){
let newarr=[]
for(let i=0;i<array.length;i++){
if(!newarr.include(array[i])){
newarr.push(array[i]) }
}
}
fn(arr)
5利用filter和indexof去重
let arr[2,3,4,2,3,13,2,45]
function distinct4(arr) {
return arr.filter((v, i, array) => array.indexOf(v, i+1) < 0) }