"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo filtrar matrices anidadas en objetos basados ​​en un valor específico?

¿Cómo filtrar matrices anidadas en objetos basados ​​en un valor específico?

Publicado el 2025-02-16
Navegar:626

How to Filter Nested Arrays in Objects Based on a Specific Value?

Filtrando la matriz de objetos con matrices basadas en el valor anidado

está tratando de filtrar una matriz de objetos basados ​​en un valor anidado dentro de aquellos objetos. El objetivo es crear una nueva matriz que incluya solo los objetos con un valor específico para una propiedad anidada.

para lograr esto, ha usado la siguiente fórmula:

let filteredArray = arrayOfElements.filter((element) => element.subElements.some((subElement) => subElement.surname === 1));

para mejorar el filtrado, puede usar una función de asignación en lugar de una función de filtro. Esto le permitirá crear una nueva matriz transformando cada elemento en la matriz original. El elemento transformado incluirá solo los subelementos que coinciden con la condición del filtro.

Aquí hay una fórmula mejorada usando la función de asignación:

deja filtrararray = arrayOfelements.map ((element) => { return {... elemento, subelements: element.subelements.filter ((subelement) => subelement.surname === 1)} })

let filteredArray = arrayOfElements.map((element) => {
  return {...element, subElements: element.subElements.filter((subElement) => subElement.surname === 1)}
})

La función de mapa itera sobre cada elemento en la matriz de ArrayOfElements.
  • Para cada elemento, crea un nuevo objeto que Incluye las propiedades del elemento original y una matriz de subelementos filtrados.
  • La función de filtro se aplica a la matriz de subelementos para eliminar los subelementos que no coincidan con la condición del filtro, que es subelemento. Este caso.
  • El operador de extensión (...) se usa para crear un nuevo objeto que combine las propiedades del elemento original con la matriz de subelementos filtrados.
  • Esta fórmula mejorada volverá Una matriz que incluye solo los objetos que tienen al menos un subelemento con una propiedad de apellido igual a 1, y cada objeto solo tendrá los subelementos coincidentes incluidos.
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3