博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Javascript 类与静态类的实现(续)
阅读量:5143 次
发布时间:2019-06-13

本文共 923 字,大约阅读时间需要 3 分钟。

由于MM的事件已干完,接着我们的静态类的实现。这东西在Javascript里用得会非常的频繁,因为针对现在的网页,多个基于同一个类对象的页面不多,往往不同块对象的交互就可以解决问题了,这就需要在JS针对元素定义几个静态类就可以完事了,进入正题。

这次我们直接看例子:

ExpandedBlockStart.gif
代码
/*
**定义静态类**
*/
var
 StaticClass 
=
 (
function
(){
    
var
 Return 
=
 {
        Property: 
"
Test Static Property
"
,    
//
公有属性
        Method: 
function
(){    
//
公有方法
            alert(_Field);    
//
调用私用字段
            privateMethod();    
//
调用私用方法
        }
    };    
//
定义返回的公有对象
    
    
var
 _Field 
=
 
"
Test Static Field
"
;    
//
私有字段
    
var
 privateMethod 
=
 
function
(){    
//
私有方法
        alert(Return.Property);    
//
调用属性
    }
    
    
return
 Return;    
//
生成公有静态元素
})();

这次,我用的是闭包的方式去实现,其中最重要的一点是reutrn Return; 这里会引伸到值类型与引用类型的概念。在js里,Object就是一个引用类型,在闭包里,我会抛出一个包含有属性与方法的Object的引用,这样,也可以说是把这个Object抛向了外部,实现了公开。StaticClass这个变量接住了Return引用。 对于闭包内部的私有字段与方法都是没有被抛出的,这样就可以形成一个私有的环境。

很多时候我们都会用这种技巧去对JS进行分块,让程序不会那么的混乱。

上面的例子没这么干过的兄弟们也可以自己去试试。忘了,刚刚那个例子大家可以这么样去试试。

StaticClass.Method();

StaticClass.Property = "Test2";

StaticClass.Method();

 

转载于:https://www.cnblogs.com/Max-Gan/archive/2010/04/02/1700937.html

你可能感兴趣的文章
PC站跳转M站的方法
查看>>
wow 各职业体验(pvp)
查看>>
Streaming的receiver模式
查看>>
[转载]一个人的失败,99%失败于“脾气”
查看>>
【Nowcoder】玩游戏
查看>>
过滤器(Filter)
查看>>
字符串的操作
查看>>
性能优化之Java(Android)代码优化
查看>>
springMVC相关—文件上传
查看>>
由Oracle 11g SYSAUX 和 SYSTEM 表空间回收引发的联想
查看>>
uva 1416 Warfare And Logistics
查看>>
欲则不达
查看>>
盒子游戏
查看>>
OpenJudgeP1.10.08:病人排队__(刷题)_水题
查看>>
观察者模式
查看>>
Hadoop分布式文件系统中架构和设计要点汇总
查看>>
cout和printf
查看>>
#C++PrimerPlus# Chapter11_Exersice4_mytimeV4
查看>>
iOS8 针对开发者所拥有的新特性汇总如下
查看>>
Jmeter + Grafana搭建实时监控可视化
查看>>