javascript设计模式——Module

Module模式是提供公有和私有方法的代码块,有利于封装组织代码,可减少变量及函数名与其它模块的冲突。

推荐阅读:

http://www.adequatelygood.com/JavaScript-Module-Pattern-In-Depth.html

http://toddmotto.com/mastering-the-module-pattern/

Module 模式多种多样,我下面仅列出常用,或比较完善或有特殊用处的Module 模式

1.私有变量加"_"表示的 Revealing Module模式

var Module = (function () {

  var _privateMethod = function () {
    // private stuff
  };

  var publicMethod = function () {
    _privateMethod();
  };
  
  return {
    publicMethod: publicMethod
  };

})();

所有的函数都放在函数内,私有的函数或变量前面加"_",公有的方法用返回对象的同名变量对函数内部直接引用。这样的写法结构非常清晰。

2.扩展Module的模式

var Module = (function (Module) {
    
    Module.extension = function () {
        // another method!
    };
    
    return Module;
    
})(Module || {});

通过引入之前的模块可以对模块进行扩展。

原文地址:https://www.cnblogs.com/winderby/p/4318080.html