Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

290
Visualizações
Cómo filtrar elementos de Array of Array en Javascript

¿Cómo puede filtrar el título de la película en función del elemento Género en la matriz?

 const result= [ { "title": "Mad Max: Fury Road", "genre": [ "Action", "Adventure", "Sci-Fi" ] }, { "title": "The Hunger Games: Mockingjay Part 1", "genre": [ "Adventure", "Thriller" ] }, { "title": "Jurassic World", "genre": [ "Action", "Adventure", "Sci-Fi" ] }, { "title": "Everest", "genre": [ "Drama", "Thriller" ] }, { "title": "Insurgent", "genre": [ "Adventure" ] }, { "title": "Sicario", "genre": [ "Action", "Crime", "Drama" ] } ];

Supongamos que si quiero filtrar el nombre del título de la película según el género, por ejemplo: "Ciencia ficción", entonces debería devolver una variedad de títulos de películas, por ejemplo: ["Mad Max: Fury Road", "Jurassic World"]

Probé varias combinaciones de mapa y filtro, pero no funcionó.

 const newResult = result.map((curr) => curr.genre.filter((ele) => ele === search)).filter((ele) => ele);
about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

Usamos el filter para devolver todas las películas que pasan alguna condición.

Para la condición de aprobación de filter , usamos every en la matriz de géneros proporcionada.

every devuelve verdadero si todos los elementos en la matriz ( genreList ) fueron llamados para devolver verdadero para alguna condición.

Para la condición de every , verificamos que la matriz de género de la película incluya la entrada en la genreList de lista de género dada.

Entonces, en inglés, este código dice "Por favor, dame todas las películas que tengan todos los géneros dados en la lista de géneros".

 const result= [ { "title": "Mad Max: Fury Road", "genre": [ "Action", "Adventure", "Sci-Fi" ] }, { "title": "The Hunger Games: Mockingjay Part 1", "genre": [ "Adventure", "Thriller" ] }, { "title": "Jurassic World", "genre": [ "Action", "Adventure", "Sci-Fi" ] }, { "title": "Everest", "genre": [ "Drama", "Thriller" ] }, { "title": "Insurgent", "genre": [ "Adventure" ] }, { "title": "Sicario", "genre": [ "Action", "Crime", "Drama" ] } ]; const moviesByGenres = (moviesList, genreList) => { return moviesList.filter((m) => { return genreList.every((g) => m.genre.includes(g)); }); } // All action movies console.log(moviesByGenres(result, ["Action"])); // All action+adventure movies console.log(moviesByGenres(result, ["Action", "Adventure"]));

about 4 years ago · Juan Pablo Isaza Relatório

0

Use Array#filter para seleccionar los elementos relevantes que cumplan con los criterios establecidos y use Array#map para seleccionar las propiedades de los elementos seleccionados que le interesen.

 const result= [ { "title": "Mad Max: Fury Road", "genre": [ "Action", "Adventure", "Sci-Fi" ] }, { "title": "The Hunger Games: Mockingjay Part 1", "genre": [ "Adventure", "Thriller" ] }, { "title": "Jurassic World", "genre": [ "Action", "Adventure", "Sci-Fi" ] }, { "title": "Everest", "genre": [ "Drama", "Thriller" ] }, { "title": "Insurgent", "genre": [ "Adventure" ] }, { "title": "Sicario", "genre": [ "Action", "Crime", "Drama" ] } ], search = "Sci-Fi"; newResult = result //which items meet the set criteria? .filter(({genre}) => genre.includes(search)) //what about those items am I zeroing in on? .map(({title}) => title); console.log( newResult );

about 4 years ago · Juan Pablo Isaza Relatório

0

Encontré la respuesta después de prueba y error.

 const n = result.filter((curr) => curr['genre'].includes("Action"))
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda