即時関数とセミコロン
即時関数を使う場合は一般的にこんな感じで書かれたりする
test.js
(function(){})()
javascriptを書く際にセミコロンを省略する宗教に入信している場合
これではエラーが出ることがあるので
test.js
!function(){}()
こんな書き方をするパターンもある
即時関数とセミコロンとアロー関数
アロー関数を使用する場合
test.js
(()=>{})()
こうなる
同じくjavascriptを書く際にセミコロンを省略する宗教に入信している場合
これではエラーが出ることがあるので
test.js
!()=>{}()
こう書きたくなるが、これもエラーになる。
そこで、こういう書き方にすることで回避できる
test.js
;(()=>{})()
jQueryとかの関数で先頭にセミコロンがついてるのは他の行末にセミコロンが無いことを考慮しているから
もちろんfunctionを使う場合でも
test.js
;(function(){})()
という書き方も可能