无法从 Openweathermap 获取温度 API

Can't get temperature from Openweathermap API

我正在尝试从以下 JSON:

中获取临时变量
"weather": [
        {
            "id": 500,
            "main": "Rain",
            "description": "light rain",
            "icon": "10n"
        },
],
"main": {
        "temp": 273.15,
        "pressure": 992,
        "humidity": 97,
        "temp_min": 273.15,
        "temp_max": 273.15
    },

我可以使用 JavaScript:

获取天气值
 function print(xxx){
  var value = "";
    for(var i = 0;i < result.weather.length;i++){
    value += result.weather[i].main "<br/>";
    }

如果我尝试这样获取温度:

function print(xxx){
  var value = "";
    for(var i = 0;i < result.main.length;i++){
    value += result.main[i].temp "<br/>";
    }

我一无所获。没有错误或值。

不同之处在于您正在查看的数据类型。 weather 是一个数组。这就是您使用 for 循环遍历数组中每个项目的原因。

main 只是一个对象。没有什么可以迭代的。它甚至没有 length 属性.

因此,要访问 main,请完全忘记 for 循环。直接访问即可。

value += result.main.temp + "<br />";