这次我们直接看例子:
复制代码 代码如下:
/***定义静态类***/
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();

一个人能够走多远,取决于与谁同行
标签:
js类,静态类

免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
评论“Javascript 类与静态类的实现(续)”
暂无“Javascript 类与静态类的实现(续)”评论...

RTX 5090要首发 性能要翻倍!三星展示GDDR7显存

三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。

首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。

据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。