Javascript Can';t从Openweathermap API获取温度

Javascript Can';t从Openweathermap API获取温度,javascript,php,json,openweathermap,Javascript,Php,Json,Openweathermap,我正在尝试从以下JSON中获取temp变量: "weather": [ { "id": 500, "main": "Rain", "description": "light rain", "icon": "10n" }, ], "main": { "temp": 273.15, "pressure": 992, "humi

我正在尝试从以下JSON中获取temp变量:

"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/>";
    }
功能打印(xxx){
var值=”;
for(var i=0;i”;
}
如果我试着得到这样的温度:

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

我什么也没有得到。没有错误或值。

区别在于您正在查看的数据类型。
天气
是一个数组。这就是为什么您使用
for
循环遍历数组中的每个项

main
只是一个对象。没有可迭代的内容。它甚至没有
length
属性

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

value += result.main.temp + "<br />";
value+=result.main.temp+“
”;
不同之处在于所查看的数据类型。
天气
是一个数组。这就是为什么要使用
for
循环遍历数组中的每个项目

main
只是一个对象。没有可迭代的内容。它甚至没有
length
属性

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

value += result.main.temp + "<br />";
value+=result.main.temp+“
”;
谢谢!我确实想到了这一点,甚至试过了,但显然犯了一个错误,因为这是正确的。谢谢!我确实想到了这一点,甚至试过了,但显然犯了一个错误,因为这是正确的。