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

效果图

数据为某一个节点对象

递归代码

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

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

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

相关推荐
知其然亦知其所以然1 分钟前
为什么说 String 是 JavaScript 中“最安静却最危险”的类型
前端·javascript·程序员
yongui478342 分钟前
基于C# WinForm开发的固定资产管理系统
开发语言·c#
阿蒙Amon5 分钟前
C#每日面试题-装箱和拆箱
开发语言·c#
天下一般6 分钟前
go语言设计模式<一>模板方法
开发语言·设计模式·golang
南山安9 分钟前
React 学习:父传子的单项数据流——props
javascript·react.js·前端框架
这个需求建议不做13 分钟前
pdf.js(pdfdist)踩坑workerSrc报错pdf.worker.mjs无法正确获取
开发语言·javascript·pdf
leiming614 分钟前
C++ 类模板对象做函数参数
开发语言·c++·算法
最贪吃的虎15 分钟前
网络是怎么传输的:从底层协议到浏览器访问网站的全过程剖析
java·开发语言·网络·http·缓存
云栖梦泽17 分钟前
鸿蒙应用全流程上线实战:从合规到运营的闭环落地
开发语言·鸿蒙系统
大猫会长20 分钟前
react中用css加载背景图的2种情况
开发语言·前端·javascript