Notes

模块模式

使用 IIFE 能够存储私有属性的原理

函数体中的变量(私有变量)在函数体外并不能访问,如果需要访问这些私有变量,必须通过暴露给外界的方法或属性进行访问

使用模块模式的代码模版

const aModule = (function() {

  // 定义私有属性的区域
  let _variable1 = '';
  let _variable2 = '';
  
  function getVariable1() {
    return _variable1;
  }
  
  function getVariable2() {
    return _variable2;
  }
  
  return {
    // 暴露外部可访问的方法或属性
    getVariable1,
    getVariable2,
  };
}());