打字稿递归检查条件

时间:2018-08-07 22:13:41

标签: javascript recursion

你好,我有一个看起来像这样的对象结构:

Category {
 id: number;
 nestedCategories: Category[];
}

现在,我需要使用递归检查父级或子级Category中是否存在具有给定ID的类别,方法签名如下:

checkIfExists(cat: Category) {
    return this.categoryViewService
      .getRawCategories()
      .filter(notChildren(cat));
}

notChildren(cat: Category) {
    //?
}

由于Java语言的作用域,我在这里遇到问题,有人可以帮我吗?

1 个答案:

答案 0 :(得分:1)

方法过滤器将参数作为方法回调。可能是的,您可以尝试以下方法:

发件人:

checkIfExists(cat: Category) {
    return this.categoryViewService
      .getRawCategories()
      .filter(notChildren(cat));
}

notChildren(cat: Category) {
    //?
}

收件人:

checkIfExists(cat: Category) {
    return this.categoryViewService
      .getRawCategories()
      .filter(notChildren);
}

notChildren(cat: Category) {
    //?
}