即時関数は、関数の定義と実行を同時に行う関数です。
構文
即時関数の構文です。
即時関数は通常の関数と同様に、引数を受け取ることも値を返すこともできます。
1 2 3 |
(function(){ //処理 }()); |
1 2 3 |
var a = (function(){ return 戻り値; }()); |
1 2 3 |
(function(p1, p2){ //処理 }(引数1, 引数2)); |
1 2 3 |
var a = (function(p1, p2){ return 戻り値 }(引数1, 引数2)); |
解説
- 即時関数は一見意味のないように感じますが、即時関数内は独立したスコープとなるため、明示的にスコープを作りたい時に使用されます。
- ただ、ECMAScript6からは「{」と「}」で囲えばスコープを作ることができるようになったため、即時関数を使う意味合いはなくなりました。