递归函数不返回

时间:2020-04-29 11:47:20

标签: javascript node.js

我正在尝试在树中找到一个元素并返回它。它适用于第一级并返回所需的文件夹,但是当我尝试更深入时,它不会返回,尽管它输入了return folder,因为如果我{{1} }它向我显示找到的文件夹。

console.log(folder)
显示它的

function findFolder(folders, folderId) { for (let i = 0; i < folders.length; i++) { const folder = folders[i] if (folder.id == folderId) { console.log(folder) return folder } else if (!folder.folders.length) { findFolder(folder.folders, folderId) } } } 找到第二个lvl元素,但是当我第一次调用该函数时不会返回它:
console.log

console.log

1 个答案:

答案 0 :(得分:0)

在else if子句中,您必须返回findFolder调用