WEB开发网
开发学院网页设计JavaScript javascript设计模式之单体模式 阅读

javascript设计模式之单体模式

 2010-01-08 00:00:00 来源:WEB开发网   
核心提示: 可见在window.onload中的width 和height已经没有干扰了,因为单体为单体中的width和height建立了一个命名空间,javascript设计模式之单体模式(4),2成员的属性:讨论完命名空间,我们来对单体变量和方法的属性做一下设定,1varcircle=(function

可见在window.onload中的width 和height已经没有干扰了,因为单体为单体中的width和height建立了一个命名空间。

2成员的属性:

讨论完命名空间,我们来对单体变量和方法的属性做一下设定。学过其他语言的人(java,c++,c#...)都应该很了解其中类成员的public和private,

虽然在javascript中没有这么严格的面向对象(oop),但是我们可以借助闭包来进行一个模仿,毕竟有的变量设为public是很不好的。

 1 var circle = (function(){
 2 //pravite member!
 3     var r = 5;
 4     var pi = 3.1416;//后面用分号
 5     return{//public member
 6         getArea:function(){
 7             return r*r*pi;//访问私有成员不要加this
 8         },//后面用逗号
 9         //如果想改变r和pi的值,只能通过设置一个公有的函数来实现
10         init:function(setR){
11             r = setR;
12         }
13     }
14 })()
15 window.onload = function(){
16     circle.r = 0;//无法访问私有成员,相当于又为circle创建了一个共有成员r
17     alert(circle.getArea());    
18     circle.init(0);//通过公有的工具函数便可以访问了。
19     alert(circle.getArea());    
20 };

私有变量、方法是只读的,公有变量、方法是可读可写的

上一页  1 2 3 4 5  下一页

Tags:javascript 设计模式 单体

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接