Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

105
Views
Devolver un valor en una función después de una promesa da como resultado indefinido

Vengo de un fondo de Python y ahora estoy aprendiendo JavaScript, creo que tengo algunos conceptos confundidos con respecto a los valores devueltos después de que se resuelve una promesa. Tengo un script simple que recopila datos meteorológicos de OpenWeatherMap usando Axios.

Dada la siguiente función, usar console.log() me da el resultado correcto:

 const axios = require('axios'); const apiKey = process.env.OPEN_WEATHER_MAP_API_KEY; let getWeather = (zip) => { const url = `https://api.openweathermap.org/data/2.5/weather?zip=${zip},au&units=metric&appid=${apiKey}`; axios.get(url) .then((resp) => { const name = resp.data.name; const temp = parseFloat(resp.data.main.temp.toFixed(1)); console.log(`The weather in ${name} is ${temp} degrees`); }); }; getWeather('2000');

Ejecutar el código devuelve The weather in Sydney South is 21 degrees .

Sin embargo, si modifico el código para que se devuelva la cadena después de la promesa en lugar de console.log(), obtengo undefined :

 const axios = require('axios'); const apiKey = process.env.OPEN_WEATHER_MAP_API_KEY; let getWeather = (zip) => { const url = `https://api.openweathermap.org/data/2.5/weather?zip=${zip},au&units=metric&appid=${apiKey}`; axios.get(url) .then((resp) => { const name = resp.data.name; const temp = parseFloat(resp.data.main.temp.toFixed(1)); return `The weather in ${name} is ${temp} degrees`; }); }; myWeather = getWeather('2000'); console.log(myWeather);

Ejecutar el código devuelve undefined .

¿Puede alguien indicarme la dirección correcta de lo que salió mal?

about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!