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

效果图

数据为某一个节点对象

递归代码

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

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

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

相关推荐
沐知全栈开发4 小时前
HTML5 浏览器支持
开发语言
wasp5204 小时前
AgentScope Java 核心架构深度解析
java·开发语言·人工智能·架构·agentscope
WHOVENLY5 小时前
【javaScript】- 笔试题合集(长期更新,建议收藏,目前已更新至31题)
开发语言·前端·javascript
慌糖5 小时前
流-为序列化解释
开发语言
指尖跳动的光5 小时前
将多次提交合并成一次提交
前端·javascript
若梦plus5 小时前
JS之类型化数组
前端·javascript
若梦plus5 小时前
Canvas 深入解析:从基础到实战
前端·javascript
若梦plus5 小时前
Canvas渲染原理与浏览器图形管线
前端·javascript
LXS_3575 小时前
Day 18 C++提高 之 STL常用容器(string、vector、deque)
开发语言·c++·笔记·学习方法·改行学it