私は CoffeeScript を初めて使用し、The Little Book on CoffeeScriptという本を読んでいます。読んでいるときに私を混乱させた本の第2章からの数行を次に示します。
CoffeeScript が公開する唯一の低レベル ループは while ループです。これは純粋な JavaScript の while ループと同様の動作をしますが、Array.prototype.map() 関数のように、結果の配列を返すという追加の利点があります。
num = 6
minstrel = while num -= 1
num + " Brave Sir Robin ran away"
初心者の CoffeeScript プログラマーにとっては良さそうに見えるかもしれませんが、コードが何をするのか理解できません。さらに、結果の配列を返すという言葉は 、 while が関数ではなくループ構造であるという事実とは一致していないようです。したがって、何かを返すという概念は紛らわしいようです。さらに、値 がループカウンターとして使用されているため、ループのすべての反復でnum
文字列"Brave Sir Robin ran away"
を含む変数は扱いにくいようです。num
コードの動作を説明し、作者が伝えようとしていることをより簡単な例で説明していただければ幸いです。