3

私は 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;
})();

Chosen が自己呼び出し関数の場合 - なぜnewステートメントを使用して初期化するのですか? ありがとう

4

1 に答える 1

1

Chosen外側のスコープには、「自己呼び出し関数」から来る内側のスコープから返された関数/コンストラクターがあります。そのため、 で呼び出されnewます。

于 2012-03-24T03:22:02.620 に答える