我可以帮您翻译,以下是需要翻译的内容:
我有一个对象数组,其结构如下:
{
Name: "Automotive"
RefCategory: 1,
ChildCategories:[{
Name: "Car"
RefCategory: 2,
ChildCategories: []
},{
Name: "Motorcycle"
RefCategory: 3,
ChildCategories: []
}]
}
我编写了一个函数,用于查找给定Ref的类别节点:
navigateToNode(node: any, RefCategoryToFind: number): any {
if (node.RefCategory == RefCategoryToFind)
return node;
node.ChildCategories.forEach(value => {
if (value.RefCategory == RefCategoryToFind)
return value;
else {
if (value.ChildCategories.length !== 0)
return this.navigateToNode(value, RefCategoryToFind);
}
});
}
当我调用这个函数时,它返回null。
let x = this.navigateToNode(this.activeCategories[0], 2);
我能看到它执行了
return value;
并找到了正确的节点,但返回值是未定义的。
forEach
的回调函数会返回一些东西,但这并不意味着navigateToNode
会返回任何东西。 - undefined