Javascript模块模式

2018-01-06 19:14 更新

Javascript面向对象设计 - Javascript模块模式


模块模式是一个用于创建单例的对象创建模式对象与私有数据。

模块模式是一个用于创建单例的对象创建模式对象与私有数据。...


var yourObject = (function() { 
    // private data variables 
    return { //w w  w .  j  av  a  2  s. c  o  m
        // public methods and properties 
    }; 
}()); 

<p>For example: </p>

var book = (function() { 
    var version= 1; 
    return { 
        name : "Javascript", 
        getVersion: function() { 
            return version; 
        }, 
        publishNewVersion : function() { 
            version++; 
        } 
    }; 
}()); 

console.log(book.name);      
console.log(book.getVersion());  //Javascript

book.version = 2; 
console.log(book.getVersion());  //1

book.publishNewVersion(); 
console.log(book.getVersion());  //2

上面的代码生成以下结果。



例子

显示模块模式在顶部安排所有变量和方法并将它们分配给返回的对象。

我们可以使用显示模块模式来编写前面的示例,如下所示:


var book = (function() { 
    var version = 1; 
    function getVersion() { /*w  w  w  . jav  a  2  s  . c  om*/
        return version; 
    } 
    function publishNewVersion() { 
        version++; 
    } 
    return { 
        name : "Javascript", 
        getVersion: getVersion, 
        publishNewVersion : publishNewVersion 
    }; 
}()); 

console.log(book.name);      
console.log(book.getVersion());  //Javascript

book.version = 2; 
console.log(book.getVersion());  //1

book.publishNewVersion(); 
console.log(book.getVersion());  //2

上面的代码生成以下结果。



以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号