javascript - 如何在 javascript moduler 模式中使用内部命名空间

标签 javascript jquery design-patterns

我有 2 个 .js 实用程序文件。我使用如下所示的模块模式。 MODULE1 和 MODULE2 是全局命名空间。此外,在内部,两个 .js 文件都使用相同的变量名称作为命名空间,即 "mynamespace" 我想知道这会导致两个模块中内部命名空间名称相同的任何问题。

1.js

var MODULE1 = (function () {
    var mynamespace = {};

    privateVariable = 1;

    function privateMethod() {
    // ...
    }

    mynamespace .Init = function () {
    // ...
   };

    return mynamespace ;
 }());

2.js

var MODULE2 = (function () {
   var mynamespace = {};    

   privateVariable = 1;

   function privateMethod() {
    // ...
   }

   mynamespace.Init = function () {
    // ...
   };

   return mynamespace;
}());

最佳答案

否,因为 mynamesapce 变量仅在每个函数的本地范围内定义。

如果 mynamespace 是全局的,则会给您带来麻烦,但事实并非如此

关于javascript - 如何在 javascript moduler 模式中使用内部命名空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31324088/

相关文章:

javascript - Createjs 和 Angularjs : Cannot read property 'Stage' of undefined

javascript - 有条件地从特定的 Promise 开始 Promise 链

jquery - 防止jquery多次点击功能

java - Struts 中的 Controller

design-patterns - OCaml中变体标签的模式匹配

design-patterns - 外观设计模式和网关设计模式有什么区别?

javascript - 没有javascript的回退解决方案

javascript - 将 javascript 注入(inject) Android webview 不显示

php - 无法删除动态添加的 div(由旧 div 触发的事件)

javascript 对 HTML 元素进行就地排序