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

124
Vistas
¿Cómo haría que esta salida fuera una cadena más pequeña y ordenada?

He estado jugando un poco con las API de Google, y estoy tratando de crear un comando en la terminal que me diga qué tan lejos estoy de algo y cuánto tiempo me llevaría llegar allí. El problema que tengo es que cuando ejecuto:

 var axios = require('axios'); var config = { method: 'get', url: 'https://maps.googleapis.com/maps/api/distancematrix/json?origins=Washington%2C%20DC&destinations=New%20York%20City%2C%20NY&units=imperial&key=AIzaSyCbwuhNvOJQrYWnLRF6WjzJeOcnhYYfpZA', headers: {} }; axios(config) .then(function(response) { console.log(JSON.stringify(response.data.rows)); }) .catch(function(error) { console.log(error); });

Ahora mismo está dando salida:

 [{"elements":[{"distance":{"text":"225 mi","value":361918},"duration":{"text":"3 hours 52 mins","value":13938},"status":"OK"}]}]

Y me gustaría que el formato de salida lo muestre como:

 you are 225 miles or 3 hours 52 mins away

¿Cómo haría para que la salida se pareciera al segundo ejemplo proporcionado?

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

0

response.data.rows es un objeto JSON. JSON.stringify() convierte eso en una cadena, que no desea, desea el objeto.

Si no lo encadena, puede acceder a la cadena de distancia con response.data.rows[0].elements[0].distance.text y el tiempo con response.data.rows[0].elements[0].duration.text

about 4 years ago · Juan Pablo Isaza Denunciar

0

Puede probar esto, pero asumo que está recibiendo datos en este orden

Le sugiero que agregue cheques null también.

 let data = [{ "elements": [{ "distance": { "text": "225 mi", "value": 361918 }, "duration": { "text": "3 hours 52 mins", "value": 13938 }, "status": "OK" }] }]; let firstElement = data[0].elements[0]; let constructedString = `You are ${firstElement.distance.text} or ${firstElement.duration.text} away`; console.log(constructedString);

about 4 years ago · Juan Pablo Isaza Denunciar

0

Podrías usar la siguiente línea:

 var data = [{"elements":[{ "distance": {"text": "225 mi", "value": 361918}, "duration": {"text": "3 hours 52 mins", "value": 13938}, "status": "OK"}]}]; console.log(`you are ${ data[0].elements[0].distance.text} or ${data[0].elements[0].duration.text} away`);

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