coffeescriptで引数にメソッドの返り値を渡す

メソッドの引数で、めんどくさいんで返り値にメソッドを渡せないのかなと思っていたのですが、可能でした。

javascriptでも返り値に引数にメソッドの値を渡せるんですね。

$ ->
  delete_submit(blog_count ->)

  $('[data-delete-blog-no]').on 'click', ->
    if(confirm("削除してよろしいですか?"))
      $(this).closest('[data-blog-no]').remove()
      delete-submit(blog_count ->)
    else
      false

delete_submit = (count) ->
  if count == 0
    $('[data-send]').remove()

blog_count = ->
  $('[data-blog-no]').length

blog_countは要素数を返すだけのメソッドです。

delete_submitは引数の要素数0なら送信ボタンを削除するというものです。

引数の中で関数を使えば、そのまま返せます。