がここで何が起こっているのかを把握しよう、奇妙なケースを考え出すを見ていない:ブロック構文<p>この</p> <pre><code>(p test) do 1 end </code></pre><p>としてブロックは、<code>p test</code>のない結果に渡され<code>test</code> 。そのため、<code>yield</code>はそのエラーを発生させずに返します。</p>
> def test
> p yield
> end
=> nil
> test { 1 }
1
=> 1
> p test { 1 }
1
1
=> 1
> p test do
> 1
> end
LocalJumpError: no block given (yield)
ここは答えです... http://stackoverflow.com/questions/533008/what-is-the-difference-or-value-of-these-block-coding-styles-in-ruby/533040# 533040 –
ここに答えがあります - http://stackoverflow.com/questions/2122380/using-do-block-vs-brackets?lq=1 –
これは、Rubyを選択できるとしても、かっこを使用する理由です。 – Linuxios