Я пытаюсь получить доступ к вложенным массивам в JavaScript из JSON, возвращенного из приложения погоды.Однако я не могу получить доступ к каким-либо данным без консоли, возвращающей cannot return property of 'x' of undefined
.Я вполне уверен, что проблема заключается в том, как я взаимодействую с result
, но я не уверен.Кто-нибудь знает, как я могу правильно получить доступ к данным из вложенного массива?
Вот мой код, который в настоящее время не работает:
const weather = require('weather-js');
var val;
var temp;
var final;
weather.find({search: 'Oceanside, CA', degreeType: 'F'}, function(err, result){
if (err) console.log(err);
obj = JSON.stringify(result, null, 2);
temp = result[2].current.temperature;
console.log(temp);
final = result[1].location.name;
console.log(final)
});
А вот JSON, с которым я пытаюсь взаимодействоватьwith:
[
{
"location": {
"name": "Oceanside, CA",
"lat": "33.197",
"long": "-117.381",
"timezone": "-8",
"alert": "",
"degreetype": "F",
"imagerelativeurl": "http://blob.weather.microsoft.com/static/weather4/en-us/"
},
"current": {
"temperature": "55",
"skycode": "31",
"skytext": "Mostly Clear",
"date": "2018-12-18",
"observationtime": "22:15:00",
"observationpoint": "Oceanside, CA",
"feelslike": "55",
"humidity": "90",
"winddisplay": "3 mph Southwest",
"day": "Tuesday",
"shortday": "Tue",
"windspeed": "3 mph",
"imageUrl": "http://blob.weather.microsoft.com/static/weather4/en-us/law/31.gif"
},
"forecast": [
{
"low": "46",
"high": "64",
"skycodeday": "29",
"skytextday": "Partly Cloudy",
"date": "2018-12-17",
"day": "Monday",
"shortday": "Mon",
"precip": ""
},
{
"low": "45",
"high": "65",
"skycodeday": "34",
"skytextday": "Mostly Sunny",
"date": "2018-12-18",
"day": "Tuesday",
"shortday": "Tue",
"precip": "0"
},
{
"low": "44",
"high": "67",
"skycodeday": "34",
"skytextday": "Mostly Sunny",
"date": "2018-12-19",
"day": "Wednesday",
"shortday": "Wed",
"precip": "0"
},
{
"low": "47",
"high": "69",
"skycodeday": "30",
"skytextday": "Partly Sunny",
"date": "2018-12-20",
"day": "Thursday",
"shortday": "Thu",
"precip": "0"
},
{
"low": "47",
"high": "65",
"skycodeday": "34",
"skytextday": "Mostly Sunny",
"date": "2018-12-21",
"day": "Friday",
"shortday": "Fri",
"precip": "0"
}
]
}
]
Этот вопрос не является дубликатом объектов Access / process (вложенных), массивов или JSON, поскольку, насколько я вижу, ответы на этой странице касаются массивов из более чем одного элементаи этот вопрос не.