javascript - 难以理解所选插件的 JavaScript 语法,需要建议

标签 javascript jquery plugins jquery-chosen

我想成为一名 javascript 程序员,所以我正在尝试阅读和理解 chosen plugin 中的代码.

我知道如何创建一个 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 语句初始化它? 谢谢

最佳答案

外部作用域中的

Chosen 是从来自“自调用函数”的内部作用域返回的函数/构造函数。这就是为什么用 new 调用它的原因。

关于javascript - 难以理解所选插件的 JavaScript 语法,需要建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9803147/

相关文章:

javascript - 在xhtml中包含外部JS文件

javascript - "Draggable"只垂直拖动?

javascript - 在 Intranet 中启用跨域脚本

plugins - CRM 2011 异步更新后插件

android - 在 Android Studio 中查找重复代码 (Kotlin)

javascript - 格式化 Rails 使用的 javascript 变量

javascript - TypeError : props. render is not a function (React hook form)

javascript - 您有多少种方法可以转义或关闭 HTML 标签?

php - 访客与登录用户的导航菜单 WP 样式

javascript - 使用java访问任何网页的Textfield和Button