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

255
Visualizações
¿Cómo leer los datos de objetos dinámicos presentes en JSON?

Estoy obteniendo un JSON de otra aplicación. Me gustaría analizar ese JSON y leer los datos presentes en ellos. El JSON contiene algunos de los datos definidos por el usuario que son dinámicos y el par clave/valor puede ser dinámico, por lo que estoy un poco confundido acerca de cómo leer estos datos dinámicos y realizar un procesamiento posterior.

El siguiente es el JSON de muestra que me gustaría procesar:

 { "context": [ { "one": "https://example.one.com" }, { "two": "https://example.two.com" }, { "three": "https://example.three.com" } ], "name": "Batman", "age": "30", "one:myField": { "two:myField2": "Hello" }, "three:myField3": "Hello2" }

Puedo leer algunos de los datos estáticos/bien definidos directamente, como el name & age , pero no entiendo cómo leer algunos de los datos definidos por el usuario/dinámicos de este JSON, ya que no tiene una clave/valor definido. o no hay garantía de que aparecerá en el pedido después de la propiedad de edad.

Estoy tratando de encontrar una manera de leer/obtener todos los datos definidos por el usuario de este JSON:

 "one:myField": { "two:myField2": "Hello" }, "three:myField3": "Hello2"

¿Hay una forma directa de lograr esto o usar alguna biblioteca? Estoy desarrollando la aplicación usando Vuejs/Nuxtjs.

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

0

Creo que esa no es la mejor API que está utilizando, debe tener parámetros de objetos constantes para que siempre sepa cómo encontrar cosas. Si desea encontrar parámetros desconocidos, puede analizar JSON para objetar y recorrerlo.

 const object = { a: 1, b: 2, c: 3 }; for (const property in object) { console.log(`${property}: ${object[property]}`); }

about 4 years ago · Juan Pablo Isaza Relatório

0

Simplemente puede lograrlo iterando sobre Object.keys() .

demostración :

 const jsonData = { "context": [ { "one": "https://example.one.com" }, { "two": "https://example.two.com" }, { "three": "https://example.three.com" } ], "name": "Batman", "age": "30", "one:myField": { "two:myField2": "Hello" }, "three:myField3": "Hello2" }; Object.keys(jsonData).forEach(key => { if (typeof jsonData[key] === 'object') { Object.keys(jsonData[key]).forEach(innerObjKey => { console.log(innerObjKey, jsonData[key][innerObjKey]) }) } else { console.log(key, jsonData[key]) } })

about 4 years ago · Juan Pablo Isaza Relatório

0

¡Combinando Object.keys con una función recursiva , incluso si tiene varios objetos anidados, funcionará sin tener que refactorizar su código cada vez!

 const jsonData = { context: [ { one: "https://example.one.com", }, { two: "https://example.two.com", }, { three: "https://example.three.com", }, ], name: "Batman", age: "30", "one:myField": { "two:myField2": "Hello", "one_nested:myField": { another_nested_key: "another_nested_value", }, }, "three:myField3": "Hello2", }; recursive(jsonData); function recursive(nestedKey) { if (typeof nestedKey !== "object") return; Object.keys(nestedKey).forEach((key) => { if (typeof nestedKey[key] === "object") { recursive(nestedKey[key]); } else { console.log(key, nestedKey[key]); // add your conditions here if (key === "name") { // bla bla bla } } }); }
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