为了账号安全,请及时绑定邮箱和手机立即绑定

有没有人遇到过这个问题哈!js数组有父级关系转换json格式的问题万分感谢

有没有人遇到过这个问题哈!js数组有父级关系转换json格式的问题万分感谢

慕仙森 2019-07-27 00:34:28
varnodes=[{id:1,label:'1级',parentId:0},{id:4,label:'2级',parentId:1},{id:9,label:'3级1-1-1',parentId:4},{id:10,label:'3级1-1-2',parentId:4}]求帮助,怎么转换成下面格式[{id:1,name:"1级"},{id:4,name:"1级:2级"},{id:9,name:"1级:2级:3级1-1-1"},{id:10,name:"1级:2级:3级1-1-2"}]问题是这里的name赋值不知道怎么做,要显示所有的父级名称,例如{name:"1级:2级:3级1-1-1"},
查看完整描述

2 回答

?
狐的传说

TA贡献1804条经验 获得超3个赞

vararr=JSON.parse(JSON.stringify(this.nodes));
for(letj=0;jfor(letk=0;kif(arr[j].id==this.nodes[k].parentId){
this.nodes[k].name=arr[j].label+":"+this.nodes[k].label;
this.nodes[k].seconedId=this.nodes[k].id;
arr[j].seconedId=this.nodes[k].id;
arr[j].label=arr[j].label+":"+this.nodes[k].label;
}
};
};
for(letj=0;jfor(letk=0;kif(arr[j].seconedId==this.nodes[k].parentId){
this.nodes[k].name=arr[j].label+":"+this.nodes[k].label;
}
}
}
console.log(this.nodes)
其实就是根据parentId去循环查找我随便写的全是for循环你看看步骤应该就知道了
至于其他的方法可能es6中会有吧
                            
查看完整回答
反对 回复 2019-07-27
  • 2 回答
  • 0 关注
  • 388 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信