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

效果图

数据为某一个节点对象

递归代码

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

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

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

相关推荐
ん贤2 小时前
Go channel 深入解析
开发语言·后端·golang
2301_789015624 小时前
DS进阶:AVL树
开发语言·数据结构·c++·算法
Filotimo_5 小时前
5.3 Internet基础知识
开发语言·php
识君啊5 小时前
Java异常处理:中小厂面试通关指南
java·开发语言·面试·异常处理·exception·中小厂
qyzm7 小时前
天梯赛练习(3月13日)
开发语言·数据结构·python·算法·贪心算法
leluckys7 小时前
swift- Swift中常见的面试题
开发语言·汇编·swift
BUG_MeDe7 小时前
json格式字符串解析的简单使用 libjson-c
c语言·开发语言·json
唐叔在学习7 小时前
e.preventDefault()到底怎么用?
前端·javascript
CoderCodingNo8 小时前
【GESP】C++五级练习题 luogu-P1182 数列分段 Section II
开发语言·c++·算法