请帮助我,因为JS这次真的杀了我。
在我开始将我的应用分成不同的功能之前,一切都很好。我的应用程序中的第一步是获取天气数据。所以我在窗口加载时调用getData函数。响应很好,我得到了我的数据,之后我将它们返回给数据变量。我console.log数据和数组。但我无法获得数组的价值!我也不是一些功能(d3.max()即)。我已经尝试了一切,但我不知道发生了什么。
window.onload = function(){
var data = getData( cities.poznan );
console.log(data);
console.log(data[0]);
}
var cities = {
poznan: "3088171",
madrid: "3117735",
barcelona: "3128760"
};
function round(n){
return Math.round( n * 10) / 10;
}
function getData(id){
var key = "22421a7c9d3efxxxxxx2b71394";
var url = "http://api.openweathermap.org/data/2.5/forecast/daily?id=" + id + "&units=metric&cnt=7&appid=" + key;
var data = [];
d3.json(url, function(response){
response.list.forEach(function(el){
data.push( el.temp.day );
});
});
return data;
}