Подтвердить что ты не робот

Как перебрать массив массивов

Каков наилучший способ перебора массива массивов?

sounds = [ [Name_1, link_1], [Name_2, link_2], [Name_3, link_3], [Name_4, link_4] ]

Я хочу получить в HTML ul/li структуру:

<ul>
   <li>Name_1, link_1</li>
   <li>Name_2, link_2</li>
   <li>Name_3, link_3</li>
   <li>Name_4, link_4</li>
</ul>
4b9b3361

Ответ 1

Предполагая, что все внутренние массивы имеют фиксированный размер, вы можете использовать автоматическую распаковку для получения каждого элемента внутреннего массива в своей собственной переменной при итерации по внешнему массиву. Пример:

sounds.each do |name, link|
  # do something
end

Ответ 2

В поле зрения:

<ul>
  <% sounds.each do |sound| %>
    <li> <%=h sound.join ', ' %></li>
  <% end %>
</ul>

Ответ 3

Используйте вложенный цикл. Внешняя повторяется над звуками, а внутренняя - итератором по текущему элементу из звуков.

Конечно, в этом конкретном примере было бы, наверное, проще всего напрямую ссылаться на элементы внутренних массивов. Таким образом, вы можете просто распечатать <li>$inner[0], $inner[1]</li> (обратите внимание, что я никогда не использовал Ruby, поэтому я не знаю, как массивы индексируются, не говоря уже о синтаксисе печати).