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

193
Visualizações
Verifica si dos arreglos de objetos tienen diferencias aislando este último

Tengo dos matrices de objetos. Cada objeto tendrá una identificación de propiedad única que, por contexto, es una identificación de filtro recuperada de una base de datos de dynamoDb. Lo que quiero lograr es recuperar una matriz de los objetos que son diferentes dada la misma identificación.

 const x = [ { 1234: "food" }, { 5678: "animal" }, { 4444: "car" } ] const y = [ { 1234: "food" }, { 5678: "bread" }, { 4444: "car" } ] const p = () => x.filter(object1 => { return !y.some(object2 => { return object1 === object2 }) }) console.log(p())

En este escenario, estaría buscando algo como

 const different = [ { 5678: "animal" }, ]

He intentado algunas cosas como en el ejemplo anterior, pero hasta ahora no he tenido éxito.

about 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

Está cerca, solo necesita obtener la clave del objeto y comparar los valores, en lugar de comparar las referencias del objeto.

 const p = () => x.filter(object1 => { return !y.some(object2 => { const key = Object.keys(object1)[0]; return object1[key] == object2[key]; }) }) console.log(p())
about 4 years ago · Santiago Trujillo Relatório

0

usa este código en su lugar:

 const p = () => x.filter((object1) => { return !y.some((object2) => { return JSON.stringify(object1) === JSON.stringify(object2); }); }); console.log(p());

no puede comparar dos objetos porque siempre serán diferentes porque están en una ubicación diferente en la memoria, debe comparar sus propiedades o convertirlos en cadenas y compararlos

about 4 years ago · Santiago Trujillo Relatório

0

 const x = [ { 1234: "food" }, { 5678: "animal" }, { 4444: "car" } ] const y = [ { 1234: "food" }, { 5678: "bread" }, { 4444: "car" } ] const findByPropertyDiff = (a,b)=>{ let rs = a.filter(item=>{ return Array.from(Object.keys(item)).some(k=>{ return b.some(compared=>{ return (compared[k] && item[k] != compared[k]); }); }) }); return rs; } const updatedItem = findByPropertyDiff(x,y); console.log(updatedItem);

about 4 years ago · Santiago Trujillo 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