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

效果图

数据为某一个节点对象

递归代码

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

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

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

相关推荐
gugucoding14 分钟前
2. 【Java】搭建Java开发环境
java·开发语言
多加点辣也没关系14 分钟前
JavaScript|第9章:对象 — 基础
开发语言·javascript·ecmascript
2601_9498180921 分钟前
Vector从入门到应用(C++ STL动态数组万字全解
开发语言·c++
后台开发者Ethan1 小时前
setState组件更新
前端·javascript·react
汤米粥1 小时前
Python爬虫中Xpath用法之——normalize-space()
开发语言·python
科技道人1 小时前
记录 设置-显示大小和字体
开发语言·android设置·字体和显示大小
浮江雾1 小时前
Flutter第三节----Dart中的数据类型
android·开发语言·学习·flutter·入门·函数
weixin_422329311 小时前
AgentScope Java 项目入门 & Builder 深度解读
java·开发语言·人工智能
chh5632 小时前
C++--list
开发语言·数据结构·c++·学习·算法·list
蜡台2 小时前
uniapp vue2 转 vue3
前端·javascript·uni-app·vue3·vue2