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

337
Vistas
¿Cómo puedo obtener datos de Array usando el método de filtro?

Quiero filtrar los datos de diaryItems que no coinciden con el valor de la clave usando el valor de la clave de estado interno en JavaScript y ponerlo en la constante de respuesta.

Usé el código así, pero no obtuve el valor deseado. ¿Cómo arreglo el código?

este es mi codigo

 const innerstate = { instar: 'egg', feedType: 'feed', feedAmount: 0, inputfeedtime: 0, wormSize: 'third', inputamount: 0, } const diaryItems = [ {diaryItemId: 174, name: "instar"}, {diaryItemId: 175, name: "recordFeedPeriod"}, {diaryItemId: 176, name: "feedPeriod"}, {diaryItemId: 177, name: "feedAmount"}, {diaryItemId: 178, name: "feedType"}, {diaryItemId: 195, name: "totalFeedAmount"}, {diaryItemId: 196, name: "inputfeedtime"}, {diaryItemId: 197, name: "wormSize"}, {diaryItemId: 198, name: "inputamount"} ] (expected answer) const answer = [ {diaryItemId: 174, name: "instar"}, {diaryItemId: 178, name: "feedType"}, {diaryItemId: 177, name: "feedAmount"}, {diaryItemId: 196, name: "inputfeedtime"}, {diaryItemId: 197, name: "wormSize"}, {diaryItemId: 198, name: "inputamount"} ]

Intenté este código pero no funciona.

 const answer = diaryItems.filter((v) => v.name !== Object.keys(innerState))
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Estabas cerca. Debe verificar si las claves contienen el nombre de la entrada actual, en lugar de verificar la igualdad de todas las claves:

 const innerstate = { instar: 'egg', feedType: 'feed', feedAmount: 0, inputfeedtime: 0, wormSize: 'third', inputamount: 0, }; const diaryItems = [ {diaryItemId: 174, name: "instar"}, {diaryItemId: 175, name: "recordFeedPeriod"}, {diaryItemId: 176, name: "feedPeriod"}, {diaryItemId: 177, name: "feedAmount"}, {diaryItemId: 178, name: "feedType"}, {diaryItemId: 195, name: "totalFeedAmount"}, {diaryItemId: 196, name: "inputfeedtime"}, {diaryItemId: 197, name: "wormSize"}, {diaryItemId: 198, name: "inputamount"} ]; const keys = Object.keys(innerstate); const result = diaryItems.filter(({name}) => keys.includes(name)); console.log(result);

about 4 years ago · Juan Pablo Isaza Denunciar

0

Solo necesita verificar si el nombre está en la matriz de claves

 const answer = diaryItems.filter((v) => Object.keys(innerstate).includes(v.name) )
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