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')と呼びます.