js 获取树节点上某节点的最底层叶子节点数据

效果图

数据为某一个节点对象

递归代码

javascript 复制代码
function getLeafNodes(node) {
  if (!node.children || node.children.length === 0) {
    // 如果是叶子节点,返回它的数据
    return [node.data];
  }
  // 如果节点有子节点,递归获取所有叶子节点的数据
  return node.children.flatMap(getLeafNodes);
}

flatMap方法:使用映射函数映射每个元素,然后将结果压缩成一个新数组

之前有个面试题,让把上面的多维数组转换为一维数组,我在那递归,傻批一个,被自己蠢死。每天一个知识点get!

相关推荐
xushichao19891 分钟前
代码生成优化技术
开发语言·c++·算法
Luna-player3 分钟前
Vue 3 + Vue Router 的路由配置,简单示例
前端·javascript·vue.js
leaves falling10 分钟前
C++类和对象(1)
开发语言·c++
敲代码的约德尔人15 分钟前
JavaScript 设计模式完全指南
javascript·设计模式
2401_8732046515 分钟前
模板编译期循环展开
开发语言·c++·算法
angerdream17 分钟前
最新版vue3+TypeScript开发入门到实战教程之Vue3详解props
javascript·vue.js
神舟之光29 分钟前
Java面向对象编程知识补充学习-2026.3.21
java·开发语言·学习
奶人五毛拉人一块31 分钟前
C++入门学习
开发语言·c++·函数重载·入门·nullptr
吃不饱的得可可31 分钟前
protobuf万字总结(C++)
开发语言·c++