jQuery e CoffeeScript: problemas com retorno automático

Algo que você deve saber ao combinar jQuery com CoffeeScript. Muitas funções jQuery interpretam o valor de retorno de seu retorno de chamada, especialmente se esse valor de retorno é falso ou não. Além disso, CoffeeScript retorna automaticamente a última expressão de uma função. Isso pode causar problemas:

$(".item").each ->
something
= false

O retorno de chamada passado para eachretorna falso, por causa do retorno automático do CoffeeScript. O jQuery’s eachinterpreta o valor de retorno de seu retorno de chamada e quebra o loop quando o retorno de chamada retorna falso, então o “loop” é chamado apenas para o primeiro .item. Para fazer um loop em todos os elementos, não teremos que retornar explicitamente nada:

$(".item").each ->
something
= false
return

Essas peculiaridades são ainda mais difíceis de detectar quando o retorno de chamada retorna apenas condicionalmente falso em alguns casos, então fique alarmado ao usar funções jQuery com retornos de chamada.