如何避免重复的方法调用?

How to avoid repetitive method calls?

我想使用 Capybara 从 HTML table 打印一些值。我的代码如下所示:

area = find_by_id('SonDakika')

p area.all('tr')[0].text
p area.all('tr')[1].text
p area.all('tr')[2].text
# ...
p area.all('tr')[98].text
p area.all('tr')[99].text
p area.all('tr')[100].text

它有效,但它非常长且重复。我怎样才能缩短我的代码?

您可以使用循环:

0.upto(100) { |i| p area.all('tr')[i].text }

或者——如果你想打印每一行——调用each:

area.all('tr').each { |row| p row.text }