Javascript 类与静态类的实现(续)


Posted in Javascript onApril 02, 2010

这次我们直接看例子:

/***定义静态类***/ 
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();

一个人能够走多远,取决于与谁同行
Javascript 相关文章推荐
Knockout visible绑定使用方法
Nov 15 Javascript
JS中判断null、undefined与NaN的方法
Mar 24 Javascript
jQuery实现级联菜单效果(仿淘宝首页菜单动画)
Apr 10 Javascript
node.js中的fs.close方法使用说明
Dec 17 Javascript
2则自己编写的jQuery特效分享
Feb 26 Javascript
JavaScript实现将文本框的值插入指定位置的方法
Aug 13 Javascript
动态创建Angular组件实现popup弹窗功能
Sep 15 Javascript
微信小程序列表时间戳转换实现过程解析
Oct 12 Javascript
js实现抽奖的两种方法
Mar 19 Javascript
Vue点击切换Class变化,实现Active当前样式操作
Jul 17 Javascript
js canvas实现五子棋小游戏
Jan 22 Javascript
小程序实现筛子抽奖
May 26 Javascript
用js实现计算加载页面所用的时间
Apr 02 #Javascript
Extjs Ext.MessageBox.confirm 确认对话框详解
Apr 02 #Javascript
ExtJS Ext.MessageBox.alert()弹出对话框详解
Apr 02 #Javascript
Extjs列表详细信息窗口新建后自动加载解决方法
Apr 02 #Javascript
JavaScript 一行代码,轻松搞定浮动快捷留言-V2升级版
Apr 02 #Javascript
js 刷新页面的代码小结 推荐
Apr 02 #Javascript
JQuery 插件制作实践 xMarquee插件V1.0
Apr 02 #Javascript
You might like
如何把PHP转成EXE文件
2006/10/09 PHP
PHP实现的同步推荐操作API接口案例分析
2016/11/30 PHP
php中__toString()方法用法示例
2016/12/07 PHP
Laravel 之url参数,获取路由参数的例子
2019/10/21 PHP
ExtJS 简介 让你知道extjs是什么
2008/12/29 Javascript
jquery ajax 检测用户注册时用户名是否存在
2009/11/03 Javascript
ExtJS下书写动态生成的xml(兼容火狐)
2013/04/02 Javascript
js showModalDialog参数的使用详解
2014/01/07 Javascript
Jquery实现地铁线路指示灯提示牌效果的方法
2015/03/02 Javascript
jQuery实现鼠标经过提示信息的地图热点效果
2015/04/26 Javascript
jQuery实现的数值范围range2dslider选取插件特效多款代码分享
2015/08/27 Javascript
jQuery实现商品活动倒计时
2015/10/16 Javascript
基于html5和nodejs相结合实现websocket即使通讯
2015/11/19 NodeJs
js去字符串前后空格的实现方法
2016/02/26 Javascript
一个字符串中出现次数最多的字符 统计这个次数【实现代码】
2016/04/29 Javascript
浅谈Web页面向后台提交数据的方式和选择
2016/09/23 Javascript
jquery根据td给相同tr下其他td赋值的实现方法
2016/10/05 Javascript
AngularJS自定义插件实现网站用户引导功能示例
2016/11/07 Javascript
vue-axios使用详解
2017/05/10 Javascript
ztree实现权限横向显示功能
2017/05/20 Javascript
详解webpack的clean-webpack-plugin插件报错
2020/10/16 Javascript
在Django中进行用户注册和邮箱验证的方法
2016/05/09 Python
Python 实现王者荣耀中的敏感词过滤示例
2019/01/21 Python
Series和DataFrame使用简单入门
2019/11/13 Python
Python3 ffmpeg视频转换工具使用方法解析
2020/08/10 Python
html5 兼容IE6结构的实现代码
2012/05/14 HTML / CSS
CSMA/CD介质访问控制协议
2015/11/17 面试题
怎样在 Applet 中建立自己的菜单(MenuBar/Menu)?
2012/06/20 面试题
支教自我鉴定
2014/01/18 职场文书
员工拓展培训方案
2014/02/15 职场文书
机械设计及其自动化求职推荐信
2014/02/17 职场文书
商务英语广告词大全
2014/03/18 职场文书
2014年单位法制宣传日活动总结
2014/11/01 职场文书
幼儿园大班教师个人工作总结
2015/02/05 职场文书
开学典礼致辞
2015/07/29 职场文书
Django框架模板用法详解
2022/06/10 Python