Arrays Typescript按另一个字符串数组筛选对象数组

Arrays Typescript按另一个字符串数组筛选对象数组,arrays,angular,typescript,Arrays,Angular,Typescript,我坚持使用我的typescript过滤器函数 我有一个对象数组: [ { "id": 12345, "title": "Some title", "complexity": [ { "slug": "1" // my search term "name": "easy" }, { "slug": "2" // my search term "name": "middle"

我坚持使用我的typescript过滤器函数

我有一个对象数组:

[
  {
    "id": 12345,
    "title": "Some title",
    "complexity": [
      {
        "slug": "1" // my search term
        "name": "easy"
      }, {
        "slug": "2" // my search term
        "name": "middle"
      },
{...}
我有一个具有允许复杂性的字符串数组:

public allowedComplexityArray:Array<string> = ["1"];
尝试:

我在
return
子句中使用
findIndex
而不是
filter
,因此它不需要每次扫描整个数组。

尝试:

我在
return
子句中使用
findIndex
而不是
filter
,因此它不需要每次扫描整个数组

allowedMeals = meals.filter(meal => {
    return meal.complexity.every(complexityObj => that.allowedComplexityArray.indexOf(complexityObj.slug) > -1)
});
let allowedMeals = data.filter(meal => {
    return meal.complexity.findIndex(complexityObj => 
        allowedComplexityArray.findIndex(m => m == complexityObj.slug) > -1) > -1
});