有如下结构数据
links里 source, target 的0 代表node1 以此类推
如何转换为
根据links里边有的关系转换为dataNew的嵌套关系
source 是父节点 target是子结点,可能有多层嵌套关系
有如下结构数据
links里 source, target 的0 代表node1 以此类推
如何转换为
根据links里边有的关系转换为dataNew的嵌套关系
source 是父节点 target是子结点,可能有多层嵌套关系
Code:
function getRelationship(data) {
var retData = new Array();
for (var i in data.node) {
var dataItem = {
name: data.node[i].name,
children: []
};
for (var j in data.link) {
if (data.link[j].source == i) {
var nodeName = data.node[data.link[j].target].name;
dataItem.children.push({
name: nodeName
});
}
}
retData.push(dataItem);
}
return retData;
}
var ret = getRelationship(data);
Result:
[ { name: 'node1', children: [ [Object], [Object] ] },
{ name: 'node2', children: [] },
{ name: 'node3', children: [] } ]
1 回答851 阅读✓ 已解决
1 回答1.1k 阅读
2 回答773 阅读
2 回答617 阅读
2 回答601 阅读
1 回答680 阅读
2 回答520 阅读
写个递归,循环遍历!