好的,当谈到 JavaScript 范围函数和模块模式时,我肯定学到了很多东西,很棒的东西!现在我正在教自己以这种方式将 jQuery 传递给一个作用域函数,它加载得更快,如果由于某种原因我有另一个使用 $ 的框架,就不会有混淆。
但是我不完全理解的是,当我想传入 jQuery 时,何时“在范围函数的上下文中”创建一个“新”实例。这就是我的意思...如果我打算使用以下作为基础,它将返回 pubs,它可以与函数或属性等相关联,我明白了。
var DemoA = (function($) {
var pubs = {};
pubs.dosomething = //some function that calculates cool stuff with help of jquery
return pubs;
})(jQuery);
现在,当我尝试创建一个新实例时......
var stuff = new DemoA();
...我通过 Google Chrome 开发者工具得到一个错误。它说“对象不是函数”或类似的东西。但是如果我这样直接调用DemoA...
DemoA.dosomething();
...然后一切正常。这里发生了什么?为什么我不能创建一个新的实例变量?
在此先感谢您帮助我变得更聪明!