このメソッドが無限再帰で死ぬのではなく 1 を返すのはなぜですか?
def foo
foo ||= 1
end
foo # => 1
次のように書き直しました。
def foo
foo.nil? ? 1 : foo
end
このメソッドが無限再帰で死ぬのではなく 1 を返すのはなぜですか?
def foo
foo ||= 1
end
foo # => 1
次のように書き直しました。
def foo
foo.nil? ? 1 : foo
end