将对象数组按照名称分类
代码如下
for(var n=0;n<this.expansiontank.length;n++){
let index = JSON.stringify(this.expansiontank[n].name).indexOf("箱");
if(n==0){
this.list1.push({Name:JSON.stringify(this.expansiontank[n].name).slice(1,index),Value:[this.expansiontank[n]]});
}else{
let str1 = JSON.stringify(this.expansiontank[n].name);
if(JSON.stringify(this.list1).indexOf(str1.slice(1,index))==-1){ //str1不在数组中
this.list1.push({Name:str1.slice(1,index),Value:[this.expansiontank[n]]});
}else{
for(var i=0;i<this.list1.length;i++){
if(str1.slice(1,index) == this.list1[i].Name){
this.list1[i].Value.push(this.expansiontank[n]);
}
}
}
}
}
去重
this.newdata[0] = this.data[0];
for(var i=1;i<this.data.length;i++){
var repeat = false;
for(var j=0;j<this.newdata.length;j++){
if(this.data[i].name == this.newdata[j].name){ //判断列表中设备名称是否重复
repeat = true;
break;
}
}
if(!repeat){
this.newdata.push(this.data[i]);
}
}