Encuentre un valor en una matriz de objetos en JavaScript

Encuentre un valor en una matriz de objetos en JavaScript
A veces, los desarrolladores deben buscar un datos específicos en una variedad de objetos basados ​​en un cierto valor o propiedad, actualizar o eliminar cualquier dato de él, y así. Para encontrar el valor específico en una matriz de objetos, use los métodos incorporados de JavaScript llamados "encontrar()"Método o el"findindex ()Método para obtener el índice del valor específico.

Este artículo demostrará el procedimiento para encontrar/determinar el valor en una matriz de objetos en JavaScript.

Cómo encontrar/determinar un valor en una matriz de objetos en JavaScript?

Para encontrar un valor/elemento en una matriz de objetos, utilice los siguientes métodos:

  • "Formación.encontrar()" método
  • "Formación.findindex ()" método
  • "para" bucle

Método 1: Busque/determine un valor en una matriz de objetos utilizando "matriz.método find () "

Para encontrar/determinar el valor/elemento en una matriz de objetos, use el "Formación.encontrar()" método. El método find () proporciona el primer elemento en la matriz que satisface/cumple la función especificada.

Sintaxis

Use la sintaxis dada para el método find ():

find ((elemento) =>
//
)

Este método acepta una función de devolución de llamada como un parámetro, que se requiere para cada elemento en la matriz. Esta función de devolución de llamada debe dar un valor booleano que indique si el elemento actual satisface la condición.

Ejemplo

Crear una variedad de objetos llamados "Información de usuario"Que almacena la información del usuario como un objeto:

var userInfo = [[

Nombre: "Mari",
Edad: 25,
Designación: 'HR'
,

FirstName: "Emma",
Edad: 20,
Designación: 'Cuentas'
,

FirstName: "Mia",
Edad: 28,
Designación: 'Admin'

];

Llama a "encontrar()"Método para obtener el objeto de usuario cuya designación es"HORA":

var valorfound = userInfo.encontrar (obj => obj.designación === 'HR');

Imprima el resultado en la consola:

consola.log (valorFound);

Vale la pena señalar que el método find () solo devuelve el primer elemento que satisface las condiciones individuales o múltiples:

Se puede observar que el método Find () busca con éxito la matriz y busca el objeto de usuario que tiene la designación coincidente.

Método 2: encontrar/determinar un valor en una matriz de objetos utilizando "matriz.método findIndex () "

Utilizar el "findindex ()"Método, que también permite encontrar el valor en una matriz de objetos. A diferencia del método find (), findIndex () emite el índice del primer elemento que cumple una condición especificada en lugar del elemento en sí. Si no se encuentra/existe ningún elemento, devuelve -1.

Sintaxis

Siga la sintaxis dada para el método findIndex ():

findIndex ((elemento) =>
//
)

Este método también acepta una función de devolución de llamada como parámetro.

Ejemplo

Llame al método findIndex () para encontrar el objeto de usuario del "Información de usuario"Array cuya designación es"Cuentas". Devolverá el índice del primer elemento cuya designación es equivalente a las cuentas:

var valueIndex = userInfo.findindex (obj => obj.designación === 'Cuentas');

Verifique el índice devuelto, si no es igual a -1, imprima el valor de ese índice en la consola:

if (valueIndex !== -1)
consola.log (userInfo [valueIndex]);

Producción

Método 3: Busque/determine un valor en una matriz de objetos usando el bucle "para"

La forma más utilizada de obtener cualquier valor de una matriz, objeto o una matriz de objetos, use el "para" bucle. Se itera a través de la matriz y, dentro del bucle, utiliza una instrucción IF para verificar si el elemento actual cumple la condición. Una vez que se encuentra el elemento, detén el bucle usando el "romper" declaración.

Sintaxis

Para usar el "para"Loop, utilice la sintaxis proporcionada:

para (var i = 0; i< array.length; i++)
// ..

Ejemplo

Primero, establezca el valor -1 en la variable "valorado", Que se actualizará al índice que satisface la condición:

var valueFound = -1;

Iterar la matriz hasta su longitud e identificar el objeto cuya edad es igual a "28". Si se encuentra el objeto, actualice el índice de la variable "valorado"Y detiene el bucle:

para (var i = 0; i< userInfo.length; i++)
if (userInfo [i].edad == '28')
valueFound = i;
romper;

Finalmente, imprima el objeto en la consola usando el "consola.registro()" método:

consola.log (UserInfo [valorfound]);

Como puede ver, el objeto cuya edad tiene 28 ha sido impresa en la consola:

Se trata de encontrar el valor en una matriz de objetos en JavaScript.

Conclusión

Para encontrar el valor/elemento en una matriz de objetos, use el "Formación.encontrar()" método, "Formación.findindex ()Método "o el"para" bucle. El método find () solo devuelve el primer elemento que satisface la condición, mientras que el método findindex () proporciona el índice de los primeros elementos que cumplen la condición especificada. Este artículo demostró el procedimiento para encontrar el valor en una matriz de objetos JavaScript.