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?
Gruß ebody