@rinatoptimus

Как обработать многомерный массив?

var data = [{
  "beer_names": [
    "Apple Ale",
    "Bad Seed Pumpkin Ale"
  ],
  "brewery": "Basil T's Brew Pub and Italian Grill"
}, {
  "beer_names": [
    "5 C's IPA",
    "Bottle Rocket IPA",
    "Kate The Great Russian Imperial Stout",
    "Wheat Wine"
  ],
  "brewery": "Portsmouth Brewery"
}, {
  "beer_names": [
    "Black Forest Dunkelweizen",
    "Equinox E.S.B.",
    "Evolutionary IPA",
    "G.E. Lite",
  ],
  "brewery": "Glen Ellyn Sports Brew"
}];

for(i = 0; i <= data.length; i++) {
	console.log(data[i].beer_names[0]);
}

- сейчас выводятся только первые beer_names, как вывести все?
Ожидаемый результат:
Apple Ale
Bad Seed Pumpkin Ale
5 C's IPA
Bottle Rocket IPA
Kate The Great Russian Imperial Stout
Wheat Wine
Black Forest Dunkelweizen
Equinox E.S.B.
Evolutionary IPA
G.E. Lite

JSFiddle
  • Вопрос задан
  • 153 просмотра
Решения вопроса 2
@CactusZ
for(i = 0; i < data.length; i++) {
	for(j = 0; j < data[i].beer_names.length; j++) {
		console.log(data[i].beer_names[j]);
  }
}


Заметьте, там знак "<"
Ответ написан
Комментировать
evgeniy8705
@evgeniy8705
Повелитель вселенной
1
for (let i = 0; i < data.length; i += 1) {
  for (let j = 0; j < data[i][`beer_names`].length; j += 1) {
    console.log(data[i][`beer_names`][j]);
  }
}


2
for (let outer of data) {
  for (let inner of outer[`beer_names`]) {
    console.log(inner);
  }
}


3
for (let outer of data) {
  outer[`beer_names`].forEach(value => console.log(value));
}


4
data.forEach(value => value[`beer_names`].forEach(value => console.log(value)));
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы