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

185
Vistas
Cómo hacer objetos Javascript a partir de un formato de datos JSON dado

Hola, necesito ayuda para comprender cómo puedo crear objetos a partir de datos JSON dados:

 { "type":"FeatureCollection", "features":[ { "type":"Feature", "properties":{ "dbh":6 }, "geometry":{ "type":"Point", "coordinates":[ -79.96474, 40.46283 ] } }, { "type":"Feature", "properties":{ "dbh":2 }, "geometry":{ "type":"Point", "coordinates":[ -80.00949, 40.42532 ] } }, { "type":"Feature", "properties":{ "dbh":12 }, "geometry":{ "type":"Point", "coordinates":[ -79.93531, 40.42282 ] } }

He hecho lo siguiente:

 let rsuCountsData = await axios.get('https://rsu-manager-apigateway 5xm3e3o5.uc.gateway.dev/rsucounts'); this.createGeoJson(rsuCountsData.data); //calling the below function

Creé la siguiente función para obtener el valor de count:

 createGeoJson(data){ //geojson={} //extract the count from data and store it in a object for (let [key, value] of Object.entries(data)) { console.log(key, value.count); //key= ip address

}

}

Ahora, dentro de esta función, quiero crear objetos a partir de los datos JSON anteriores, pero no estoy seguro de cómo hacerlo porque parece demasiado anidado para que lo descubra. A continuación se muestra lo que he hecho. Es una combinación de pseudocódigo y JS. Tampoco creo que sea correcto, pero alguien puede ayudarme a señalar en la dirección correcta cómo puedo almacenar estos valores en objetos JS dentro de la función createGeoJson:

 geojson = {} geojson.type = "FeatureCollection" geojson.features = [] for key, val in data: feat.type = "Feature" props.count = val.count props.ipAddress = val.ipAddress// this is the key in above function. feat.properties = props geojson.features.append(feat)

Gracias y agradezco cualquier aporte

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Le sugiero que use JSON. parse () para convertir la cadena JSON en un objeto JS simple.

Después de eso, puede iterarlo con for...in , bucles o cualquier otro iterador .

about 4 years ago · Juan Pablo Isaza Denunciar

0

En general, (después de analizar su cadena a través de JSON.parse() ) puede recorrer su matriz Object.feature con la función .forEach ( consulte la documentación de MDN ).

No estoy 100% seguro de cuál debería ser su resultado exacto, pero parece un buen caso de uso para la función .map() ( documentación de MDN aquí ). Digamos que tiene su JSON almacenado en const json , podría hacer algo como:

 const json = { ... } const newArray = json.features.map(el => Object.assign({},{type: el.type, properties: el.properties, geoType: el.geometry.type}));

newArray se llenará con Objetos creados a partir de Objetos vacíos y la función Object.assign() ( documentación de MDN )

EDITAR : también puede acceder al índice dentro de la función .map() para su contador.

about 4 years ago · Juan Pablo Isaza 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