【发布时间】:2017-05-21 23:52:57
【问题描述】:
RuboCop 建议:
将
Array.new与块一起使用,而不是.times.map.
在docs 中为警察:
这个警察检查 .times.map 调用。在大多数情况下,此类调用可以替换为显式创建数组。
例子:
# bad
9.times.map do |i|
i.to_s
end
# good
Array.new(9) do |i|
i.to_s
end
知道可以替换,但是感觉9.times.map更接近英文语法,更容易理解代码的作用。
为什么要更换?
【问题讨论】:
-
请注意,它在“性能”组中(如您从链接中看到的那样),这是一个提示。 :-)
-
所有表演警察改编自:github.com/JuanitoFatas/fast-ruby :-)
标签: ruby performance rubocop