visible true

技術的なメモを書く

rubyのslice!でめっちゃハマった

map!

各要素を順番にブロックに渡して評価し、その結果で要素を置き換えます。

https://docs.ruby-lang.org/ja/latest/class/Array.html#I_COLLECT--21

てことで、自分自身を書き換える。

array = [1,2,3,4,5]
array.map!{ |a| a * 2 }  # [2,4,6,8,10]になる

slice! も同じノリと思ったら、

array = [1,2,3,4,5]
array.slice!(0, 2)  # [1,2]になると思ったら...

指定した要素を自身から取り除き、取り除いた要素を返します。取り除く要素がなければ nil を返します。

https://docs.ruby-lang.org/ja/latest/class/Array.html#I_SLICE--21

てことで、

戻り値 = [1, 2] array = [3,4,5]

になった。めちゃくちゃ時間を溶かしました。 ドキュメントはちゃんと読まないといけませんね。