Este estudio discutirá los métodos para filtrar las matrices de objetos basados en atributos.
Cómo filtrar matrices de objetos basados en atributos en JavaScript?
Para filtrar matrices de objetos basados en atributos en JavaScript, use los siguientes métodos:
Examinemos todos estos métodos individualmente.
Método 1: Filtro de matrices de objetos basados en atributos utilizando el método find ()
El método "Find ()" se usa para filtrar un solo objeto desde una matriz de objetos que satisfacen la condición dada. Aquí, examinaremos el método find () con la función de flecha (=>).
La función de flecha también es una función anónima, como se define sin el nombre de la función. Obtenga más información sobre las funciones de flecha.
Sintaxis
Para usar la función de flecha con el método filtre (), siga la sintaxis dada:
Devuelve el primer elemento que coincide con la condición especificada y si no coincide ningún elemento, regresa "indefinido".
Ejemplo:
Primero, crearemos una variedad de objetos llamados "lista de empleados":
Filtrar el objeto basado en el atributo "departamento"Eso es igual a"Auditoría"Usando el método find ():
VAR Empleado = Empleado.find (emp =>Por último, imprima el objeto filtrado en la consola usando "consola.registro()" método:
consola.log (empleado);La salida muestra el único primer objeto que coincide con el departamento === 'auditoría':
Si desea acceder a un atributo que no existe en el objeto, en ese caso, el método filtre () devolverá "indefinido":
Cómo filtrar todos los objetos relacionados con una condición dada? Sigue la siguiente sección.
Método 2: Filtro de conjuntos de objetos basados en atributos usando el método filtre ()
Para filtrar todos los objetos de una matriz basada en atributos en la condición dada, el JavaScript predefinió "filtrar()Se utiliza el método ". Aquí, examinaremos dos enfoques para aplicar un filtro a una variedad de objetos, una función de flecha o una función de devolución de llamada. Recibe cada elemento que se le pasó por el método Filter (), que boques internamente a través de los elementos de la matriz. Agrega el elemento a la matriz devuelta si la función de devolución de llamada devuelve verdaderas.
Sintaxis
La sintaxis del método filtre () es la siguiente:
Aquí, el método Filter () toma dos parámetros ","función de devolución de llamada", Que es el parámetro obligatorio, y"objeto", Que es un argumento opcional. Emite una nueva matriz que contiene cada elemento que cumple con el requisito especificado. Si ninguno de los elementos satisface la condición especificada, devolverá una matriz vacía como salida.
Para usar el método Filter () con la función de devolución de llamada para filtrar la matriz de objetos basada en atributos, use la siguiente sintaxis:
var newArray = Array.Filtro (función (CurrentElement)La función de devolución de llamada () toma tres parámetros el "CurrentElement","índice", y un "formación". CurrentElement es el elemento en la matriz que actualmente está siendo procesado por la función de devolución de llamada, y es el argumento obligatorio. En comparación, el índice y la matriz son parámetros opcionales.
Ejemplo 1: Filtro de matrices de objetos basados en atributos usando el método Filter () con la función de devolución de llamada
Usaremos la misma matriz de objetos "lista de empleados"Creado en el ejemplo anterior. Ahora, utilizaremos el método Filter () con la función de devolución de llamada para filtrar la matriz de objeto basada en el atributo "nombre":
Producción
Ejemplo 2: Filtro de conjuntos de objetos basados en atributos usando el método Filter () con una función de flecha
Aquí, usaremos el método Filter () con la función de flecha para filtrar la matriz de objeto basada en el atributo "departamento":
La salida muestra todos los datos que coinciden con el departamento === 'auditoría':
Si desea acceder al atributo que no existe en el objeto, devolverá una matriz vacía:
Hemos reunido todos los métodos para filtrar una matriz de objetos basados en los atributos en JavaScript.
Conclusión
Para filtrar la matriz de objetos basada en atributos en JavaScript, use los métodos incorporados de JavaScript como "encontrar()"Método o"filtrar()" método. El método find () genera el primer elemento que coincide con la condición especificada, y si ningún elemento coincide, devuelve indefinido. Por el contrario, el método Filter () proporciona una nueva matriz que contiene elementos que cumplen con la condición especificada. Si ninguno de los elementos satisface la condición particular, dará una matriz vacía. En este estudio, hemos discutido los métodos para filtrar la variedad de objetos en función de sus atributos con ejemplos.