La guía o código que encontrarás en este post es la resolución más fácil y válida que hallamos a esta duda o dilema.
Solución:
ES6 presenta una nueva forma de lograr esto, si ES6 es una opción para usted:
myArray.find(item =>
return item.isAstronaut
)
O incluso más abreviado:
myArray.find(item => item.isAstronaut)
find()
es uno de los nuevos iteradores, junto con filter()
y map()
y otros para trabajar más fácilmente con arreglos. find()
devolverá el primer artículo en su array que coincide con la condición. los =>
o “función de flecha” significa que no necesita incluir explícitamente la declaración de devolución.
Obtenga más información sobre los iteradores de ES6.
Necesita usar el índice para el array.
people[i] // for the object people[i].isAstronaut // for a property of the object
Entonces solo necesita un cheque si isAstronaut
es true
y devolver con el artículo.
Al final fuera de la for
bucle, retorno null
para un astronauta no encontrado.
Si revisa dentro del ciclo, regresará demasiado pronto con el resultado incorrecto.
function findFirstAstronaut(people)
for (let i = 0; i < people.length; i++)
if (people[i].isAstronaut)
return people[i];
return null;
Un trazador de líneas
arr.filter(item => item.isAstronaut)[0]
valoraciones y comentarios
Puedes añadir valor a nuestro contenido informacional asistiendo con tu veteranía en las observaciones.