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

173
Visualizações
¿Cómo se puede eliminar el nodo de JSON si los valores son los mismos en JSON?

Queremos eliminar el nodo duplicado de JSON. Este nodo se eliminará si los valores de trait_type son iguales

Aquí está JSON

 [ { "trait_type": "Background", "value": "Yellow" }, { "trait_type": "A", "value": "None" }, { "trait_type": "B", "value": "Male Body Grey Color" }, { "trait_type": "A", "value": "Outfit" } ]

A JSON final debería gustarle esto.

 [ { "trait_type": "Background", "value": "Yellow" }, { "trait_type": "A", "value": "None" }, { "trait_type": "B", "value": "Male Body Grey Color" } ]

Por favor ayuda

Gracias

about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

Así que supongo que su json es una matriz de javascript, de lo contrario use JSON.parse para convertirlo.

Entonces, lo que quiere es eliminar el valor doble en la matriz y, para ser justos, hay mucho que hacer, yo personalmente uso un Conjunto para hacer eso, pero para ser "amigable para principiantes", usaré un gran objeto temporal para almacenar valor y recuperarlos por una referencia

 const data = [ { "trait_type": "Background", "value": "Yellow" }, { "trait_type": "A", "value": "None" }] const tmpObject = {}; data.forEach((d) => { if (!tmpObject[d?.trait_type]) { tmpObject[d.trait_type] = d; // we only push data indide the object if the keys does not exist and the keys is the value you want to be unique so once you have a value matching we will not add the next data (with same trait_type) inside the object } }); // now build the new array is like theArrayYouWant = []; Object.keys(tmpObject).forEach((d) => { theArrayYouWant.push(tmpObject[d]); });
about 4 years ago · Juan Pablo Isaza Relatório

0

Esta función pura debería hacer:

 function filterUnique(data){ const unique = {}; data.forEach(el => { unique[el.trait_type] = el; }); return Object.values(unique); } // const filteredJSON = filterUnique(json);
about 4 years ago · Juan Pablo Isaza Relatório

0

prueba esto

 var noDuplicatesArr = origArr.filter((v,i,a)=>a.findIndex(v2=>(v2.trait_type===v.trait_type))===i); console.log(noDuplicatesArr);
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