ebody: Javascript includes einzelne Array Werte

Beitrag lesen

problematische Seite

Hallo und vielen Dank für die Hilfe. Das muss ich erstmal in ruhe nachvollziehen, um es zu verstehen.

Wenn z.B. die Filter Genre: ['Abenteuer','Action'] gewählt wurden, soll jeder Film ausgewählt werden, der in Genre einen dieser Begriffe enthält, also brauche ich some, wenn ich es richtig verstanden habe.

Bei diesem Filter würde dieser Film ausgewählt, da Genre "Abenteuer" enthält, auch wenn er nicht "Action" enthält:

{
 Titel: 'Pirates of the Caribbean Salazars Rache',
 Genre: 'Abenteuer,Fantasy',
 Tags: 'Piraten,Meer'
}

Ich hatte jetzt noch eine Sache probiert und verstehe nicht, warum dataset[] immer leer ist. Ich habe diese 2 Funktionen zugefügt:

function valInArray(arrFilter){
  console.log('valInArray arrFilter: ', arrFilter);
  for(let filterWord of arrFilter){
    console.log('valInArray filterWord: ', filterWord);
    myCallback(filterWord);
  }
}

function myCallback(filterWord){
  console.log('myCallback filterWord: ', filterWord);
  return filterWord;
}

Testweise, erstmal ohne Schleife, rufe ich im Filter die Funktion auf:

dataset = arrMovies.filter(movie => movie['Genre'].includes(valInArray(arrFilter['Genre'],myCallback)) === true);

Obwohl jeder Filter Begriff zurückgeben wird und geprüft werden müsste, ob dieser im Array enthalten ist movie['Genre'].includes(...) ist dataset[] am Ende leer. Warum?

Ausgabe

Gruß ebody