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

212
Vistas
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 Respuestas
Responde la pregunta

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 Denunciar

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 Denunciar

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 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