tap, yeild_selfについて
tapとyield_selfの使い分けについて
- tapについて
tapはレシーバ自身を返すため、元々のレシーバの値を変更することなくメソッドチェーンをつなげることができる。 他の処理を行いながら、メソッドチェーンを行いたい時などに便利。
result = [] test = [1, 2, 3] kekka = test.tap { |t| result << t.sum }.join('/') result => [6] kekka => "1/2/3"
- yield_selfについて
yield_selfはブロック内の処理結果を返すため、
他の処理を行いながら、メソッドチェーンを行いたい時などに便利。