去除对象重复, 这里使用的indexOf,
//原理是创建新数组,用新数组去找去重数组某个值,找不到,就push进新数组。
function incident(arr){
let newsArr = [];
for (let i = 0; i < arr.length; i++) {
if(newsArr.indexOf(arr[i]) === -1){
newsArr.push(arr[i]);
}
}
return newsArr;
}
利用splice方法去除,这里使用splice
//原理: 俩层循环,外层循环遍历数组,内层循环比较值,相同去除
function fun(arr){
for (let i = 0; i < arr.length; i++) {
for(let j = i+1; j < arr.length; j++){
if(arr[i]==arr[j]){
arr.splice(j,1); j--;
}
}
}
return arr;
}
看了一下别人说的Set去重方案
es6展开运算符能够将一个数组转为用逗号分隔的参数序列,也是能够实现的
function fun(arr){
let s1 = new Set(arr);
return [...s1];
}
置空对象属性重复某个属性
indexOf,新添加数组,在新数组找,便利出来的旧属性的每一个值。-1找不到就push进去这个值,找得到就置空
this.datas.forEach((k)=>{
if(this.binshou.indexOf(k.pind) === -1){
this.binshou.push(k.pind)
}else{
k.pind = ''
}
console.log(this.datas);
})