У меня есть канал JSON, из которого мне нужно извлечь некоторую информацию, чтобы нанести несколько маркеров на карту.Для этого мне нужно пройти по каналу JSON, а затем пройти по определенному объекту в массиве.
Я могу заставить его проходить по верхнему уровню (категории), но пытаясь пройти по каждомукатегория работает, как и ожидалось - я получаю одну и ту же категрию, повторяемую в количестве категорий.
Структура массива / объекта выглядит следующим образом:
- activities
|_ category
|_ acf
|_ activity_listing
|_ name
|_ latitude
|_ longitude
|_ name
|_ latitude
|_ longitude
|_ category
|_ acf
|_ activity_listing
|_ name
|_ latitude
|_ longitude
|_ name
|_ latitude
|_ longitude
Каждая категория имеет список действийс несколькими элементами (name, lat, lng).
Мой код настроен, как показано ниже:
var activitiesLocationList = this.activitiesLocations;
for (var i = 0; i < activitiesLocationList.length; i++) {
activitiesLocationList[0]['acf']['activity_listing'].forEach(function(item) {
var placeName = item['activity_listing-name'];
var placeLatitude = parseFloat(item['activity-listing_latitude']);
var placeLongitude = parseFloat(item['activity-listing_longitude']);
console.log('Place Name: ' + placeName);
})
}
Вывод:
'Place Name: Karijini National Park'
'Place Name: Staircase to the Moon'
'Place Name: Millstream Chichester National Park'
'Place Name: Dampier Archipelago'
'Place Name: Murujuga National Park'
'Place Name: Montebello Islands'
'Place Name: Karijini National Park'
'Place Name: Staircase to the Moon'
'Place Name: Millstream Chichester National Park'
'Place Name: Dampier Archipelago'
'Place Name: Murujuga National Park'
'Place Name: Montebello Islands'
Так что почтичто я хочу, но только вход в первую категорию.Что я делаю не так?
Как заставить его пройтись по каждой категории, зацикливая содержимое по ходу?