Javascript includes einzelne Array Werte bearbeitet von ebody 12.06.2021 14:01 Hi Rolf, anhand deiner Lösung habe ich [hier einen fertigen Code erstellen können.](https://codepen.io/ebody/pen/QWpZZZx) Ist etwas abgeändert. Vielen Dank an alle! ~~~ Javascript /** Array mit Filmen */ const arrMovies = [ { Titel: 'Prometheus', Genre: 'Science-Fiction,Fantasy', Tags: 'Favorit,Weltall' }, { Titel: 'Arrival', Genre: 'Science-Fiction,Fantasy', Tags: 'Weltall' }, { Titel: 'Pirates of the Caribbean Salazars Rache', Genre: 'Abenteuer,Fantasy', Tags: 'Piraten,Meer' }, { Titel: 'Shutter Island', Genre: 'Drama,Thriller', Tags: 'Favorit,De Caprio' } ]; /** Array mit Filtern */ const arrFilter = { Genre: ['Abenteuer','Action','Thriller'], Tags: ['New York','Favorit','Top10'] }; /** Gefiltertes Array mit Filmen */ let dataset = []; /** * Filtern */ /** arrFilter[] wird durchlaufen */ for(let filterWord in arrFilter){ /** * Wenn ein Wert wie z.B. "Abenteuer" aus arrFilter[filterWord] (z.B. arrFilter['Genre']) in einem der Elemente aus arrMovies['Genre'] enthalten ist, speicher diesen Datensatz im Array filterCheck * arrFilter['Genre']['Abenteuer','Action','Thriller'] würde mit dieser einen Zeile zwei Elemente aus arrMovies[] in filterCheck[] speichern. * arrFilter['Tags']['Favorit'] würde mit dieser einen Zeile zwei Elemente aus arrMovies[] in filterCheck[] speichern. */ let filterCheck = arrMovies.filter(movie => arrFilter[filterWord].some(genre => movie[filterWord].includes(genre))); /** filterCheck[] Elemente enthält */ if(filterCheck.length){ /** filterCheck[] durchlaufen */ for(let filterCheckElement of filterCheck){ /** Wenn dataset[] das Array Element aus dem Array filterCheck[] nicht enthält */ if(!dataset.includes(filterCheckElement)){ /** Füge das Array Element aus dem Array filterCheck[] dem Array dataset[] hinzu */ dataset.push(filterCheckElement); } } } } /** Ausgabe des Arrays dataset[], welche alle Datensätze gefiltert aus arrMovies[] enthält */ console.log('dataset final: ', dataset); ~~~ Gruß ebody
Javascript includes einzelne Array Werte bearbeitet von ebody 12.06.2021 14:04 Hi Rolf, anhand deiner Lösung habe ich [hier einen fertigen Code erstellen können.](https://codepen.io/ebody/pen/QWpZZZx) Ist etwas abgeändert. Vielen Dank an alle! Gruß ebody