Javascript 类与静态类的实现


Posted in Javascript onApril 01, 2010

今天所要说的就是,如何在Javascript里写类与静态类,这是本人一惯用的方法,你也可以有更为方便的,也可以发发评论跟大家交流交流。
首先说说类,在一个类里我们会有以下的几个特征:
1. 公有方法
2. 私有方法
3. 属性
4. 私有变量
5. 析构函数
我们直接看一个例子:
类例子

/***定义类***/ 
var Class = function(){ 
var _self = this;//把本身引用负值到一变量上 
var _Field = "Test Field"; //私有字段 
var privateMethod = function(){ //私有方法 
alert(_self.Property); //调用属性 
} 
this.Property = "Test Property"; //公有属性 
this.Method = function(){ //公有方法 
alert(_Field); //调用私用字段 
privateMethod(); //调用私用方法 
} 
}

这里我已把注释都写上,大家大概也会一眼就看得明白。对于少写JS的朋友,可能会觉得奇怪为什么我会定义一个_self的变量, 因为在js里,this不用对于其他的对象语言,他的解析过程与运行过程中this会改变的。这里简单说说js里this的定义,若有需要我可以开多一篇。
定义:this是包含它的函数作为方法被调用时所属的对象。
特征:this的环境可以随着函数被赋值给不同的对象而改变!
有兴趣的朋友可以网上找找资料了解一下,说回正题,这里的_self目的是为了开多一个私有的变量,直接指向类的本身。
刚刚还说到一个析构函数的问题,这可以直接用代码来实现。在函数的最后直接写执行代码就OK。
代码
/***定义类***/ 
var Class = function(){ 
var _self = this;//把本身引用负值到一变量上 
var _Field = "Test Field"; //私有字段 
var privateMethod = function(){ //私有方法 
alert(_self.Property); //调用属性 
} 
this.Property = "Test Property"; //公有属性 
this.Method = function(){ //公有方法 
alert(_Field); //调用私用字段 
privateMethod(); //调用私用方法 
} 
/***析构函数***/ 
var init = function(){ 
privateMethod(); 
} 
init(); 
}

使用这个类,引用我同事的那句“简单得很!”
var c = new Class();
这样就OK
类的定义就说完了,静态类,要等到下一次了。因为有MM叫我去喝茶
一个人能够走多远,取决于与谁同行
Javascript 相关文章推荐
JS 无限级 Select效果实现代码(json格式)
Aug 30 Javascript
两种方法实现文本框输入内容提示消失
Mar 17 Javascript
微信浏览器内置JavaScript对象WeixinJSBridge使用实例
May 25 Javascript
AngularJS+Bootstrap实现多文件上传与管理
Nov 08 Javascript
javascript 单例模式详解及简单实例
Feb 14 Javascript
JavaScript之DOM插入更新删除_动力节点Java学院整理
Jul 03 Javascript
Node.js使用Koa搭建 基础项目
Jan 08 Javascript
QRCode.js二维码生成并能长按识别
Oct 16 Javascript
Javascript中弹窗confirm与prompt的区别
Oct 26 Javascript
2019最新21个MySQL高频面试题介绍
Feb 06 Javascript
JS使用setInterval计时器实现挑战10秒
Nov 08 Javascript
编写v-for循环的技巧汇总
Dec 01 Javascript
多浏览器支持的右下角浮动窗口
Apr 01 #Javascript
js 多浏览器分别判断代码
Apr 01 #Javascript
JS 遮照层实现代码
Mar 31 #Javascript
js压缩工具 yuicompressor 使用教程
Mar 31 #Javascript
jQuery 遍历json数组的实现代码
Sep 22 #Javascript
Javascript load Page,load css,load js实现代码
Mar 31 #Javascript
Javascript Jquery 遍历Json的实现代码
Mar 31 #Javascript
You might like
php 数组的一个悲剧?
2011/05/11 PHP
关于php内存不够用的快速解决方法
2013/10/26 PHP
PHP count_chars()函数讲解
2019/02/14 PHP
PHP调用QQ互联接口实现QQ登录网站功能示例
2019/10/24 PHP
JQuery 文本框使用小结
2010/05/22 Javascript
深入理解JavaScript系列(7) S.O.L.I.D五大原则之开闭原则OCP
2012/01/15 Javascript
javascript操作JSON的要领总结
2012/12/09 Javascript
jQuery对象和DOM对象之间相互转换的方法介绍
2015/02/28 Javascript
JQuery实现动态适时改变字体颜色的方法
2015/03/10 Javascript
基于JS+Canves实现点击按钮水波纹效果
2016/09/15 Javascript
js初始化验证实例详解
2016/11/26 Javascript
微信小程序开发的四十个技术窍门总结(推荐)
2017/01/23 Javascript
JAVA中截取字符串substring用法详解
2017/04/14 Javascript
详解vue-admin和后端(flask)分离结合的例子
2018/02/12 Javascript
打通前后端构建一个Vue+Express的开发环境
2018/07/17 Javascript
解决vue-cli项目开发运行时内存暴涨卡死电脑问题
2019/10/29 Javascript
javascript canvas API内容整理
2020/02/16 Javascript
CentOS 8.2服务器上安装最新版Node.js的方法
2020/12/16 Javascript
[59:44]2018DOTA2亚洲邀请赛 3.31 小组赛 B组 paiN vs iG
2018/03/31 DOTA
Python入门篇之编程习惯与特点
2014/10/17 Python
在Python中使用next()方法操作文件的教程
2015/05/24 Python
Python基于pygame实现图片代替鼠标移动效果
2015/11/11 Python
20招让你的Python飞起来!
2016/09/27 Python
利用Tkinter(python3.6)实现一个简单计算器
2017/12/21 Python
基于numpy.random.randn()与rand()的区别详解
2018/04/17 Python
Python 为什么推荐蛇形命名法原因浅析
2020/06/18 Python
Python操作dict时避免出现KeyError的几种解决方法
2020/09/20 Python
为世界各地的女性设计和生产时尚服装:ROMWE
2016/09/17 全球购物
施华洛世奇澳大利亚官网:SWAROVSKI澳大利亚
2017/01/06 全球购物
英国皇室御用百货:福南梅森(Fortnum & Mason)
2017/12/03 全球购物
东芝官网商城:还原日式美学,打造美好生活
2018/12/27 全球购物
《猴子种树》教学反思
2014/02/14 职场文书
小学校园广播稿集锦
2014/10/04 职场文书
质量整改报告范文
2014/11/08 职场文书
办公室岗位职责范本
2015/04/11 职场文书
教师网络培训心得体会
2016/01/09 职场文书