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

213
Visualizações
Eliminar propiedad y sus valores en todo el objeto.

Soy un principiante en javaScript, tengo este objeto MyGraph:

 const MyGraph = { a: { b: 5, c: 2 }, b: { a: 5, c: 7, d: 8 }, c: { a: 2, b: 7, d: 4, e: 8 }, };

Quiero eliminar la propiedad "a" y sus valores en otras propiedades también para obtener este resultado:

 const MyGraph = { b: { c: 7, d: 8 }, c: { b: 7, d: 4, e: 8 }, };

Intenté así:

 for(let XXX of Object.keys(MyGraph)){ console.log(XXX.a); delete XXX.a; }

el resultado de la ejecución:

 undefined undefined undefined

¡alguna ayuda!

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

0

Podrías usar un algoritmo recursivo:

 function del_entries(key, obj) { if (obj.hasOwnProperty(key)) { delete obj[key]; } // Or with Object.hasOwn, not fully supported by old browsers but more up to date /* if (Object.hasOwn(obj, key)) { delete obj[key] } */ Object.values(obj).forEach(o=> del_entries(key, o)) } const MyGraph = { a: { b: 5, c: 2 }, b: { a: 5, c: 7, d: 8 }, c: { a: 2, b: 7, d: 4, e: 8 }, }; del_entries("a", MyGraph); console.log(MyGraph)

about 4 years ago · Santiago Trujillo Relatório

0

En tu código XXX está la clave. Debe hacer el graph[XXX] para acceder al objeto real. Entonces, en lugar de XXX.a , debe hacer graph[XXX].a . Pero esto solo tiene en cuenta los objetos en el graph que tienen la clave a . También debe tener en cuenta la clave a en el graph . Por favor, vea el código a continuación. Es un ejemplo rudimentario.

Si tiene un nivel de anidamiento, puede usar el siguiente código.

 const mygraph = { a: { b: 5, c: 2 }, b: { a: 5, c: 7, d: 8 }, c: { a: 2, b: 7, d: 4, e: 8 }, }; console.log(mygraph); function deletePropAndValuesOf(key, graph) { for (const k of Object.keys(graph)) { if (k === key) { delete graph[key]; } else { if (key in graph[k]) { delete graph[k][key] } } } } deletePropAndValuesOf("a", graph); console.log(mygraph);

Puede copiar el código en un archivo .js y ejecutarlo usando node. p.ej ingrese la descripción de la imagen aquí

about 4 years ago · Santiago Trujillo Relatório

0

Utilicé la desestructuración de objetos para eliminar la primera matriz con una a, pero no pude averiguar cómo hacer todas las a, pero el código a continuación podría ayudar.

 const MyGraph = { a: { b: 5, c: 2 }, b: { a: 5, c: 7, d: 8 }, c: { a: 2, b: 7, d: 4, e: 8 }}; const {a, ...newMyGraph} = MyGraph; // output console.log(newMyGraph)

devoluciones

 b: { a: 5, c: 7, d: 8 }, c: { a: 2, b: 7, d: 4, e: 8 } }
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