9得票2回答
当使用JavaScript模块模式时,我如何从私有方法中调用公共方法?

我想从一个私有方法中调用一个公共方法,但是属性"this"指的是窗口对象。 请注意,我正在尝试应用模块模式。您可以在jsfiddle.net找到一个可工作的代码示例。 // how can i access a public method from a private one? // (i...

9得票4回答
如何在JavaScript中使用Chain Pattern和Self Revealing Module Pattern?

我有以下代码: filtersManager = (function ($) { var that = this; function configure() { // some work return that; }; ...

8得票1回答
编写一个JavaScript库

我希望编写一个JS库,并按照以下方式处理它: var c1 = Module.Class(); c1.init(); var c1 = Module.Class(); c2.init(); 当然,c1和c2不能共享相同的变量。 我认为使用对象可以解决这个问题,方法如下: var Mod...

8得票2回答
如何在JavaScript模块模式中从私有函数调用公共函数

如何在JavaScript模块模式中从私有函数中调用公共函数? 例如,在以下代码中, var myModule = (function() { var private1 = function(){ // How to call public1() here? ...

8得票1回答
导出模块模式

我刚开始学习JavaScript中的模式,现在逐渐适应了这种写法: (function(window){ var privateVar; var privateFunc = function(param){ //do something } return{...

8得票1回答
使用模块模式和实例化新对象的区别

我正在尝试重构一些JavaScript代码,对于模块模式感到困惑。 现在,我采用的一种方法是简单地声明一个包含组件所有功能的类,如下所示: var Foo = function(){ this.Bar = {}; ... } 并创建一个新实例供组件使用。但我也读过模块模...

8得票2回答
使用AMD定义的Javascript模块如何扩展?

首先讲一下历史背景,我们有一个由许多JavaScript文件组成的引擎,这些文件本质上都是模块。这些模块返回一个单一的类,被分配给全局范围内的一个指定命名空间下。 引擎本身用于显示电子学习内容,每个不同的电子学习课程都需要稍微不同的需求,因此我们根据所需功能将JavaScript文件包含到页...

8得票3回答
Javascript模块模式和new关键字

我了解模块模式的基础知识及其使用封闭包来允许私有成员,但我无法完全理解下面的代码为什么会产生这样的结果: var Calculator = function() { var priv = 0; return { changePriv: function() ...

8得票3回答
JavaScript 设计模式需要帮助:模块的松散增强

编辑以使内容更清晰 - @Qantas94Heavy - 我理解它的“意思”或者说它应该做什么,但我不明白的是为什么以及更重要的是如何工作: 我正在阅读一篇关于JS模块模式的高级教程,它给出了以下例子: var MODULE = (function (my) { // add capabi...

8得票2回答
你能将多个文件压缩成一个吗?

我将我的JavaScript代码拆分成几个文件,所有文件都使用模块模式(使用一个名为MyApp的全局变量更新新功能和成员)。 是否可能将这些文件压缩成一个文件而不破坏作用域? 例如,我想要压缩的文件: File1.js var Module = (function(ns) { ns...