Esta es la función para tomar los datos de temperatura de una API meteorológica (entre otros datos):
displayWeather: function (data) { const { name } = data; const { icon, description } = data.weather[0]; const { temp, humidity } = data.main; const { speed } = data.wind; document.querySelector(".city").innerText = "El tiempo en " + name; document.querySelector(".icon").src = "http://openweathermap.org/img/wn/" + icon + ".png"; document.querySelector(".description").innerText = description; document.querySelector(".temp").innerText = Math.trunc(temp) + "°C"; document.querySelector(".humidity").innerText = "Humedad: " + humidity + "% "; document.querySelector(".wind").innerText = "Velocidad del viento: " + speed + " km/h";La temperatura es el valor que necesito convertir en Farenheit. El guión ya está hecho, pero siempre obtengo un NaN. Sé que hay un "°C" después de ese número, pero incluso cuando lo elimino para extraer solo el número, sigo obteniendo NaN.
Gracias por tu ayuda. Finalmente solucioné el problema, pero descubrí qué parte estaba mal y descubrí que no estaba usando la línea de código correcta para extraer los datos y configurarlos en el lugar correcto.
Antes:
C = document.getElementById("ID").value;Línea correcta:
C = document.querySelector(".temp").innerText;Ahora esa línea de código finalmente toma la temperatura y puedo convertirla en Farenheit con:
F = (C * 9) / 5 + 32;Lo siento por la pregunta tonta. Ahora solo tengo que averiguar cómo puedo agregar el + "°C"
cambie las unidades de su api openweathermap de imperial a métrica
Para temperatura en Fahrenheit use unidades = imperial Para temperatura en Celsius use unidades = métrico