函数的定义

var a = function(){
  function b(){
    //coding...
  }
  function c(){
    //coding...
  }
  function d(){
    //coding...
  }
  return {
    b:b,
    c:c
  }
}()

此种设计,可以暴露b,c,隐藏d。

var a = function(){
  var x = "...";
  function a(){
    //coding with x...
  }
  return a;
}
闭包的设计,自由变量x的存在,带来很多便利

原文地址:https://www.cnblogs.com/jiajiaobj/p/2337079.html