Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

249
Vistas
En el método javascript find () de una matriz, ¿cómo obtener cualquier elemento usando solo el argumento de la matriz de la función de devolución de llamada? Ver el código a continuación
var check = [1,2,3,4,5,6]; var check1 =check.find((elements,index,array)=>{ return array ;}); console.log(check1);

La salida es 1. ¿Por qué? Y si quiero 3 como salida de la matriz anterior al dar controles o condiciones al argumento de la matriz, ¿cómo obtenerlo?

about 4 years ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

El método find ejecuta la función callbackFn una vez para cada índice de la matriz hasta que callbackFn devuelve un valor verdadero . Si es así, find devuelve inmediatamente el valor de ese elemento. De lo contrario, find devuelve indefinido.

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/find

Y dado que en realidad no está haciendo ninguna verificación y solo está devolviendo c (un valor verdadero), que es la matriz en sí, es por eso que devuelve 1 .

Si desea encontrar 3 o cualquier otro valor, haga lo siguiente (también nombre mejor los parámetros de su función para que sea más fácil entender lo que está sucediendo):

 var check = [1, 2, 3, 4, 5, 6]; var check3 = check.find((element, index, array) => { return element === 3 }); console.log(check3); // output : 3
about 4 years ago · Juan Pablo Isaza Denunciar

0

En respuesta a la solicitud OP en los comentarios. El tercer parámetro de la función de devolución de llamada que se pasa a array.find se puede usar para modificar la matriz original en función de una condición. Este ejemplo cambia los valores pares al valor impar 1.

 const check = [1,2,3,4,5,6] check.find((el, index, arr) => { if (el % 2 === 0){ arr[index] = 1 } }) console.log(check) // [2,2,3,4,5,6]

Sin embargo, este no es el uso adecuado de .find y .find no debe usarse de esta manera. .find debe usarse para simplemente devolver el primer valor de una matriz que satisface una condición, como explicó decho en su respuesta. Si desea actualizar los valores en una matriz, considere usar un bucle for o .forEach .

about 4 years ago · Juan Pablo Isaza Denunciar

0

Según su comentario, aquí se explica cómo verificar si existe un número en un índice en particular y devolver el número en función de esa verificación.

 var check = [1, 2, 3, 4, 5, 6]; var check1 = check.find((el, i, arr) => { return arr.indexOf(3) > 1 && el === 3; }); var check2 = check.find((el, i, arr) => { return arr.indexOf(3) > 3 && el === 3; }); console.log(check1); console.log(check2);

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda