小枝から幹をめざして

今は小枝しか拾えてないけどいつか幹にたどり着くんだ。個人的な勉強の忘備録PHP,MySQL,javascript

!functionの意味とfunction文・function式の違い



jQueryやjstreeの冒頭に
!functionと書かれている。これは一体なんだ。

式とは「演算子オペランドを組み合わせた
これも式
これも式
これも式
function文を()で括ればfunction式になる。

(むしろfunction文を書くほうが大変かも)

【即時関数】

()();
というつもりでいたけど

式();
  ↑ここが実行

文();
だと駄目。
(※functionで始まるfunction文は{}の終わりが文の終わりだと解釈される。;が入っているものとみなされる。
{};
()
と強制的に区切られてしまうため、()がfunction文の実行だとはみなされない。)


じゃあ式にしよう。

これなら式だ!();で実行しよう。

別に()で括るんじゃなくてもいい。
functionの前に演算子をつければ式になる!

!function(){}();
+function(){}();
-function(){}();
var function(){}();

ぜーんぶ式!だから即実行可能。

http://webnonotes.com/javascript-2/function/
http://03log.me/blog/2014-07-10-js-function.html
http://d.hatena.ne.jp/kousukekayo/20090827/1251363441
http://d.hatena.ne.jp/amachang/20080208/1202448348
http://qiita.com/ryokio0129/items/bde7d95293ee3dcbc896
http://www.tagindex.com/kakolog/q4bbs/2401/2841.html
http://newvo.jp/251515/%E3%82%BD%E3%83%BC%E3%82%B7%E3%83%A3%E3%83%AB%E3%83%9C%E3%82%BF%E3%83%B3%E3%81%AEJavaScript%E3%81%A7function%E3%81%AE%E5%89%8D%E3%81%AB%E3%80%8C!%E3%80%8D%E3%81%8C%E3%81%A4%E3%81%84%E3%81%A6%E3%81%84%E3%82%8B%E7%90%86%E7%94%B1:%E5%B0%8F%E7%B2%8B%E7%A9%BA%E9%96%93
http://www.koikikukan.com/archives/2013/06/12-003333.php
http://www.koikikukan.com/archives/2013/04/09-003300.php
http://d.hatena.ne.jp/kumamidori/20120728/p1
http://blog.tojiru.net/article/197270788.html
http://bonsaiden.github.io/JavaScript-Garden/#function.sco pes
http://d.hatena.ne.jp/kumamidori/20120728/p1

http://qiita.com/orangemittoo/items/ba82462610f0b72915f6
http://d.hatena.ne.jp/teramako/20130622/p1
↑このサイトでExpressionStatementのことが書かれていたため次回はECMAScriptについて!