LoginSignup
15
18

More than 5 years have passed since last update.

CoffeeScriptで引数を必要としない関数の実行にdoが使えることを今さら知ったのでメモ

Posted at

タイトルにあるように、CoffeeScriptで引数を必要としない関数の実行にdoが使えることを今さら知ったのでメモメモ。

結論から言えば、関数の前にdo句を用いればいい。

# hoge()
do hoge

ずっと、オライリー本に書いてあるFunction argumentsの章のところで

関数に引数が最低ひとつあれば括弧を必要としないのでCoffeeScriptって美しいよね。
でも引数が一個もない場合、関数を実行したいのか参照したいのか、CoffeeScriptはわかんないから、括弧の使用不使用の判断は注意しないといけないね。

って書いてあったので、この記述を曲解して引数がひとつもない関数は括弧付きで記述するしかないとてっきり勘違いしてた…。

同じオライリー本にあるPrivate variablesの章では

do句は関数をすぐに実行するよ!
無名関数の即時実行なんかに便利だね!

みたいな事書いてあるのは知ってたんだけど、この文をそのまま、「無名関数の即時実行にはdoを使う」みたいに覚えてた。こんな感じの奴↓

do ->
    console.log 'hoge'

これ扱えてたんだから、引数のない関数の実行まであと一歩だったはずなのに、気付くのに何年かかったか…。

15
18
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15
18