0

我有一个字符串数组,我想在我的视图中显示由“,”分隔的所有元素。当我做一个每个这个数组时,如何知道当前元素是否是最后一个?

像这样的东西?

- categoryName.each do |name|
  - if (name.last) -- the last elemnt of array
    = name
  - else
    = name + ", "

任何想法!

4

4 回答 4

6

尝试使用Array.join

= categoryName.join(', ')
于 2013-09-13T13:12:26.103 回答
3

您可以简单地调用categoryName.join(', ')which 将数组中的所有名称与指定的字符串连接起来。如果数组中只有一个值,它什么也不做,只返回一个名称。

于 2013-09-13T13:12:47.893 回答
1

您可以为此使用Enumerable#each_with_index

- categoryName.each_with_index do |name, i|
  - if (i == categoryName.length - 1) -- the last elemnt of array
    = name
  - else
    = name + ", "
于 2013-09-13T13:12:22.830 回答
0

如果你使用 Rails,你可以试试这个。

categoryName.to_sentence

它会自动做你想做的事。

于 2013-09-13T13:14:40.480 回答