2012-03-21 5 views
3

私はJavaScriptプログラマになりたいので、chosen pluginのコードを読んで理解しようとしています。選択したプラグインのJavaScriptシンタックスを理解できませんでした。アドバイスが必要です

私はjQueryプラグインを作成する方法を知っている、と私はモジュールのパターンについて読んだことが、 まだこのコードは私には不明である:

//... 
    attaching to jQuery object 
    //... 
    $.fn.extend({ 
    chosen: function(options) { 

     return $(this).each(function(input_field) { 
     if (!($(this)).hasClass("chzn-done")) { 
      return new Chosen(this, options); 
     } 

     }); 
    } 
    }); 



//... 
//... 
//... 


Chosen = (function() { 
    __extends(Chosen, AbstractChosen); 
    function Chosen() { 
     Chosen.__super__.constructor.apply(this, arguments); 


    } 
    // ... 
    // attaching various events 
    // ... 
    return Chosen; 
})(); 

選ばれたが、自己呼び出される関数である場合 - なぜinitはそれが使用して新しい声明? ありがとう

+0

なぜでしょうか? – gdoron

+3

Savascript?それはJavascriptのカット価格版のようなものですか? ':-D' – halfer

+4

Lol 'choesnのsavascriptのsyntacsis ... ... dyslecticsはteople pooです。 新しいキーワードが使用されます。bc Chosenは、プロトタイプチェーンをさらに上回るオブジェクトコンストラクタを呼び出す、つまり、子オブジェクトの2次コンストラクタです。 –

答えて

1

Chosenは、外側のスコープ内の "self invoked function"からの内部スコープから返された関数/コンストラクタです。だからそれはnewと呼ばれています。

関連する問題