JS 模块 p6

Posted Jony-IT

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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为单例。

以上是关于JS 模块 p6的主要内容,如果未能解决你的问题,请参考以下文章