拿出所有的id和name
{
"id": 7,
"name": "测试",
"children": [
{
"id": 10,
"name": "来了"
}
]
}
直接上代码
function getAllIdsAndNames(data) {
var result = [];
//获取当前节点的id和name
var id = data.id;
var name = data.name;
result.push({ id: id, name: name });
//如果当前节点有子节点,则递归获取子节点的id和name
if (data.children && data.children.length > 0) {
for (var i = 0; i < data.children.length; i++) {
var childIdsAndNames = getAllIdsAndNames(data.children[i]);
result = result.concat(childIdsAndNames);
}
}
return result;
}
//使用递归函数获取所有id和name的值
var allIdsAndNames = getAllIdsAndNames(data);
//打印所有id和name的值
console.log(allIdsAndNames);