こちらはプログラマーなりたてのへっぽこパンピーが、自分の自分による自分のための忘備録として書いてるので、間違いもがあるかもですがあしからず!
Rubyは基本的に関数内でreturnを記述する必要がない
そもそも、関数内でreturnが必要ないってのは、僕も知ってたんですよ。
#これはたとえ
def addition(x)
x + 1
end
でもかたかたコードを書いた結果、なぜか関数からの返値がnilになってたんですよ。
もうその時は、nanu!? ってなりましたね。
#これはたとえ
def addition(z)
a = x + 1
return a
end
だからreturnを追加してしっかり値が返るようにしたんですよね。
でもそれがどんなに非道な行いだとは思いよりませんでした....
結果からいえば、returnいらないよって言われた際に
「いやでも、値返ってこんかったし」 と心のマリワナ海溝より深いところで思ったので、証明してみたく再度試してみたら、returnを記述しなくても、ちゃんと返ってきました。
おそらくその前の引数の受け渡しに何か記述 間違い があったのかもしれなかったんですよ。
もうRubyを疑う前に己を疑えですよ。
俺のやったことは、橋本環奈を更に可愛くしようと整形手術を施した レベルの、余分かつ非道な行為だったと白日のもとにさらされたのでした。
Don't doubt Ruby, doubt yourself.
と僕の心のブルースリーが、原則を大事にすることが非常に大事だと教えてくれました。
ちなみに、何の値を返してるかわかりづらいときは、あえてreturnを明示的 に記述することもあるそうです。