JS 模块 p6

利用了闭包的模块:

简单模块例子:

function fn(){
   var x = 1; 
   function y(){
       console.log(x);
    }   
 
    return {  y:y}
}
var do1 = fn()

do1.y(); // 1

我们可以将这个“对象类型”的返回值看做是 模块的公共API 
这个例子中返回的实例中 y() 等于是拥有了函数fn的内部作用域的闭包。

模块模式条件(书):

1.必须由外部的封闭函数,且被调用。

2.封闭函数必须返回至少一个内部函数。

 

单例模式(平时使用的比较多):

var single = (function(){
    var x = 1;
    function fn(){
        console.log(1);
    };   
    return {  fn:fn  }
})();

single.fn();//1

将模块函数使用IIFE 表达出来,因为是立即调用,所以此实例的标识foo为单例。

上一篇:超实用的!南京南站最新停车指南来了


下一篇:Java基础72问:java的环境变量path怎么写