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

效果图

数据为某一个节点对象

递归代码

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

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

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

相关推荐
q***71851 分钟前
QoS质量配置
开发语言·智能路由器·php
草莓熊Lotso1 分钟前
《算法闯关指南:优选算法--模拟》--41.Z 字形变换,42.外观数列
开发语言·c++·算法
shura10146 分钟前
如何优雅地实现参数校验
java·开发语言
20岁30年经验的码农8 分钟前
Python语言基础文档
开发语言·python
wjs20244 小时前
Django Nginx+uWSGI 安装配置指南
开发语言
七夜zippoe5 小时前
JVM类加载机制(Class Loading)详解:双亲委派模型与破坏实践
java·开发语言·jvm·类加载·双亲委派
曹牧5 小时前
C#:无法从方法组转换为objec
开发语言·c#
自动化代码美学5 小时前
【Python3.13】官网学习之控制流
开发语言·windows·python·学习
coderxiaohan6 小时前
【C++】仿函数 + 模板进阶
开发语言·c++
星离~7 小时前
Vue响应式原理详解:从零实现一个迷你Vue
前端·javascript·vue.js