Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

152
Visualizações
¿Dónde está el error en este método de búsqueda?

El código funciona con una función foreach simple, pero no con un método de búsqueda. Aquí está el código forEach:

 getItemById: function (id) { let found = null; data.items.forEach(item => { if (item.id === id) { found = item; } }); return found; }

Aquí está el código con un método de búsqueda:

 getItemById: function (id) { let item = data.items.find(item => { item.id === id; }); return item; }

¿Por qué no funciona el código con el método find?

también aquí está la matriz de los objetos:

 const data = { items: [ { id: 0, name: 'Steak Dinner', calories: 1200 }, { id: 1, name: 'Sausage', calories: 1100 }, { id: 2, name: 'Eggs', calories: 200 }, ], currentItem: null, totalCalories: 0, }
about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

La búsqueda espera una función de predicado como devolución de llamada y devuelve el valor que satisface la condición. Si no regresa, undefined regresará de forma predeterminada y undefined se considera un valor falsy .

No está devolviendo nada de la función de find . find no considerará una coincidencia si la función de predicado no devuelve true . No hay una sola coincidencia que devuelva true en cualquier caso porque todos los valores devueltos por find no están undefined

 return item.id === id. 

 const data = { items: [ { id: 0, name: "Steak Dinner", calories: 1200 }, { id: 1, name: "Sausage", calories: 1100 }, { id: 2, name: "Eggs", calories: 200 }, ], currentItem: null, totalCalories: 0, }; const obj = { getItemById: function (id) { let item = data.items.find((item) => { return item.id === id; }); return item; }, }; console.log(obj.getItemById(0));

about 4 years ago · Juan Pablo Isaza Relatório

0

 getItemById: function (id) { return data.items.find(item => item.id === id); }

No tienes que usar "{" y ";" en el método data.items.find(). Porque, el hallazgo es una función de predicado

about 4 years ago · Juan Pablo Isaza Relatório

0

No está devolviendo el booleano dentro de la devolución de llamada de find

 let item = data.items.find(item => { return item.id === id; });
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda