js树结构查找树中是否存在此id
时间: 2023-09-17 10:13:37 浏览: 43
好的,那我来给你提供一个基本的树结构查找的代码实现,你可以根据自己的具体需求进行修改:
```javascript
function hasId(tree, id) {
if (tree.id === id) {
return true;
}
if (tree.children && tree.children.length > 0) {
for (var i = 0; i < tree.children.length; i++) {
if (hasId(tree.children[i], id)) {
return true;
}
}
}
return false;
}
```
这个函数接受两个参数:一个树结构 `tree` 和一个要查找的 id 值 `id`。它会递归遍历整个树结构,查找是否存在指定的 id 值。如果找到了,就返回 true,否则返回 false。
你可以将你的树结构和要查找的 id 值作为参数传入这个函数中,例如:
```javascript
var myTree = {
id: 1,
children: [
{
id: 2,
children: [
{
id: 3,
children: []
},
{
id: 4,
children: []
}
]
},
{
id: 5,
children: [
{
id: 6,
children: []
}
]
}
]
};
console.log(hasId(myTree, 3)); // true
console.log(hasId(myTree, 7)); // false
```
在这个例子中,我定义了一个树结构 `myTree`,然后分别调用了 `hasId` 函数来查找 id 为 3 和 7 的节点是否存在。你可以根据你的实际情况进行调用。