avascriptの自己実行匿名関数アプリケーション例

995 ワード

Javascriptにおける自己実行匿名関数フォーマット:

(function(){ 
//   
})(); 
説明:これはかなり優雅なコードです.(初めて見たら霧のようなものがあります.)包囲関数の最初のペアの括弧は台本に名前のない関数を返し、その後のペアの空白括弧は直ちに名前のない関数を実行します.括弧内は匿名関数のパラメータです.パラメータの例を示します.

(function(arg){ 
alert(arg+100); 
})(20); 
//       120。 
重要な用途:名前空間を作ってもいいです.自分のコードをこの特殊な関数の包装に書いたら、外部は訪問できません.許可していない限り、

(function(){ 
function $(id){ 
return document.getElementById(id); 
} 
function __addClass(id,className,classValue){ 
$(id).style.className=classValue; 
} 
window['mySpace']={}; 
window['mySpace']['addClass']=__addClass; 
})();
上記の例では、このような疑似名前空間を用いて、自分の関数、オブジェクト、変数をすべてカプセル化して保護します.また、それらは同じ関数の中にあるので、相互に参照できます.保護されたコードをグローバル化するために、その後の一対の括弧は、すぐに返送された匿名関数を実行し、実行中に、__adClass()を実行します.windowに割り当てられた一つの方法は、外部ではaddClassしか実行できなくて、保護されました.mySpace.addClass('oneId'、'font-width'、'bold')と呼びます.