Enumerable#each
和之间的区别在于Enumerable#map
它是返回接收者还是映射的结果。回到接收者是微不足道的,你通常不需要在each
like之后继续一个方法链each{...}.another_method
(我可能没有见过这种情况。即使你想回到接收者,你也可以用 来做到这一点tap
)。所以我认为使用的所有或大多数情况Enumerable#each
都可以替换为Enumerable#map
. 我错了吗?如果我是对的,这样做的目的是each
什么?map
比 慢吗each
?
编辑:我知道each
当您对返回值不感兴趣时,可以使用一种常见的做法。我对这种做法是否存在不感兴趣,但对这种做法是否有意义,而不是从惯例的角度来看感兴趣。