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

效果图

数据为某一个节点对象

递归代码

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

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

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

相关推荐
Kiri霧3 分钟前
Go 结构体
java·开发语言·golang
沐知全栈开发6 分钟前
《jQuery 密码验证》
开发语言
-大头.8 分钟前
Java泛型实战:类型安全与高效开发
java·开发语言·安全
charlie11451419111 分钟前
现代C++工程实践:简单的IniParser4——实现ini_parser
开发语言·c++·笔记·学习·工程
lsx20240614 分钟前
R 注释:全面指南与最佳实践
开发语言
Glommer14 分钟前
AST 反混淆处理示例(二)
javascript·爬虫
jimy117 分钟前
ps aux|grep pid 和 ps -p pid 的区别
java·linux·开发语言
西西弗Sisyphus20 分钟前
C++ 实现支持 32 位和 64 位进程的模块枚举
开发语言·c++·操作系统
白露与泡影30 分钟前
Java关键字解析之final:不可变的本质、设计哲学与并发安全
java·开发语言·安全
喵了meme1 小时前
C语言实战3
c语言·开发语言