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

效果图

数据为某一个节点对象

递归代码

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

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

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

相关推荐
念何架构之路5 分钟前
Go进阶之panic
开发语言·后端·golang
一位搞嵌入式的 genius7 分钟前
深入 JavaScript 函数式编程:从基础到实战(含面试题解析)
前端·javascript·函数式
亓才孓8 分钟前
[Properties]写配置文件前,必须初始化Properties(引用变量没执行有效对象,调用方法会报空指针错误)
开发语言·python
傻乐u兔12 分钟前
C语言进阶————指针3
c语言·开发语言
两点王爷22 分钟前
Java基础面试题——【Java语言特性】
java·开发语言
choke23326 分钟前
[特殊字符] Python 文件与路径操作
java·前端·javascript
Swift社区30 分钟前
Gunicorn 与 Uvicorn 部署 Python 后端详解
开发语言·python·gunicorn
码农阿豪42 分钟前
Python Flask应用中文件处理与异常处理的实践指南
开发语言·python·flask
岁岁种桃花儿42 分钟前
CentOS7 彻底卸载所有JDK/JRE + 重新安装JDK8(实操完整版,解决kafka/jps报错)
java·开发语言·kafka
csbysj20201 小时前
AngularJS 模块
开发语言