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

119
Vistas
Ir a través de un objeto con varios objetos secundarios y actualizar una propiedad específica

Este es mi objeto con múltiples objetos secundarios anidados. Mi requisito es actualizar todas las propiedades de la path , de todos y cada uno de los objetos, anteponiendo algunos elementos más en la matriz de la path .

Ejemplo:

 Original path array = "path": ["8.4139e5d6"] What will be prepended = ["f.34284b8f"] Updated prepended array = "path": ["f.34284b8f", "8.4139e5d6"]

Asimismo, la propiedad de path de todos los objetos debe actualizarse.

¿Cómo puedo pasar por este objeto complejo y actualizar los valores de la path ?

 { "id": "2254285645109265838", "created_at": "2022-07-08T06:43:10.198458Z", "updated_at": "2022-07-08T06:43:10.198458Z", "name": "richText", "type": "", "layout": [ { "type": "richText", "title": "richText", "id": "8.4139e5d6", "children": [ { "id": "0.99fcfd44", "title": "New", "type": "text", "props": {}, "children": [], "expanded": false, "path": [ "8.4139e5d6", "0.99fcfd44" ] } ], "path": [ "8.4139e5d6" ], "expanded": true } ], "inputs": [], "outputs": [], "settings": {}, "app": "2207269985154238407", "library": "2226681003462624929" },
about 4 years ago · Santiago Gelvez
1 Respuestas
Responde la pregunta

0

Creo que escribiría una función que pueda llamarse a sí misma para iterar sobre todo el objeto y los niños varias veces. También puede usar Object.keys(obj) para acceder a las claves del objeto para verificar si la clave es = "ruta".

Aquí hay una función rápida que hace lo que creo que está buscando, donde los datos son su objeto principal y la inserción es la matriz para agregar a la ruta.

 const loopObject = (obj, insert) => { if (typeof obj !== "object") return; for (let key of Object.keys(obj)) { if (key === "path") { obj[key] = [...obj[key], ...insert]; } else if (typeof obj[key] === "object") { loopObject(obj[key], insert); } else if (typeof obj[key] === "array") { obj[key].forEach((element) => { loopObject(element, insert); }); } } return obj; };
about 4 years ago · Santiago Gelvez 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