在特定间隔/范围内映射数组

时间:2012-08-17 12:38:16

标签: ruby-on-rails ruby ruby-on-rails-3

为什么映射不会使用此函数更改数组:

array[1..5].map! { |part| "<p>#{part}</p>" }

我知道我可以将数组[1..5]分配给结果,但可能有更好的方法。

我该怎么做?

2 个答案:

答案 0 :(得分:4)

  

[](*参数)

     

返回一个填充了给定对象的新数组。

     

Source

因此,您实际上是将map!应用于该范围的新数组,而不是实际数组。

分配是必要的。

答案 1 :(得分:3)

嗯, 更改了数组。你只是没有看到它,因为你永远不会将数组分配给任何东西,所以它会立即被垃圾收集。