js 获取树形中最下面一层得数据
时间: 2024-04-15 21:28:58 浏览: 17
要获取树形结构中的最底层数据,可以使用递归的方式遍历树,并判断当前节点是否为叶子节点。以下是一个示例的JavaScript代码:
```javascript
function getBottomItems(tree) {
let result = [];
function traverse(node) {
if (node.children && node.children.length > 0) {
node.children.forEach(child => {
traverse(child);
});
} else {
result.push(node); // 当前节点为叶子节点,将其添加到结果数组中
}
}
traverse(tree); // 从根节点开始遍历
return result;
}
```
这段代码中,`getBottomItems`函数接受一个树形结构的对象作为参数,并返回最底层的叶子节点数组。
你可以根据自己的数据结构进行调整,确保递归能够正确遍历树形结构。在遍历过程中,判断当前节点是否有子节点,如果有子节点,则继续递归遍历子节点;如果没有子节点,则将当前节点添加到结果数组中。
以下是一个使用示例:
```javascript
const tree = {
name: 'A',
children: [
{
name: 'B',
children: [
{ name: 'C' },
{ name: 'D' }
]
},
{
name: 'E',
children: [
{ name: 'F' },
{ name: 'G' }
]
}
]
};
const bottomItems = getBottomItems(tree);
console.log(bottomItems);
```
输出结果为:
```
[
{ name: 'C' },
{ name: 'D' },
{ name: 'F' },
{ name: 'G' }
]
```
这样就可以获取到树形结构中的最底层数据。注意,根据你的实际数据结构,可能需要调整代码以适应不同的情况。