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 相关文章推荐
共享自己写一个框架DreamScript
Jan 20 Javascript
javascript 装载iframe子页面,自适应高度
Mar 20 Javascript
js操作二级联动实现代码
Jul 27 Javascript
基于jquery实现拆分姓名的方法(纯JS版)
May 08 Javascript
jQuery实现个性翻牌效果导航菜单的方法
Mar 09 Javascript
JavaScript+html5 canvas绘制渐变区域完整实例
Jan 26 Javascript
深入浅析Vue中的 computed 和 watch
Jun 06 Javascript
js+html5实现手机九宫格密码解锁功能
Jul 30 Javascript
微信小程序中的canvas 文字断行和省略号显示功能的处理方法
Nov 14 Javascript
基于Vue的商品主图放大镜方案详解
Sep 19 Javascript
基于vue项目设置resolves.alias: '@'路径并适配webstorm
Dec 02 Vue.js
详细谈谈JavaScript中循环之间的差异
Aug 23 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 park、unpark、ord 函数使用方法(二进制流接口应用实例)
2010/10/19 PHP
php模拟asp中的XmlHttpRequest实现http请求的代码
2011/03/24 PHP
PHP实现手机归属地查询API接口实现代码
2012/08/27 PHP
PHP附件下载中文名称乱码的解决方法
2015/12/17 PHP
总结PHP删除字符串最后一个字符的三种方法
2016/08/30 PHP
基于jquery的跨域调用文件
2010/11/19 Javascript
javascript:void(0)使用探讨
2013/08/27 Javascript
jQuery超赞的评分插件(8款)
2015/08/20 Javascript
Javascript刷新窗口方法小结
2015/10/21 Javascript
javascript实现查找数组中最大值方法汇总
2016/02/13 Javascript
一个仿微博登陆邮箱提示框js开发案例
2016/07/28 Javascript
JS正则表达式修饰符global(/g)用法分析
2016/12/27 Javascript
vue过渡和animate.css结合使用详解
2017/06/14 Javascript
gulp教程_从入门到项目中快速上手使用方法
2017/09/14 Javascript
JS实现的简单折叠展开动画效果示例
2018/04/28 Javascript
浅谈微信JS-SDK 微信分享接口开发(介绍版)
2018/08/15 Javascript
vue安装和使用scss及sass与scss的区别详解
2018/10/15 Javascript
微信二次分享报错invalid signature问题及解决方法
2019/04/01 Javascript
JsonProperty 的使用方法详解
2019/10/11 Javascript
js 获取扫码枪输入数据的方法
2020/06/10 Javascript
typescript编写微信小程序创建项目的方法
2021/01/29 Javascript
[38:23]完美世界DOTA2联赛循环赛 FTD vs PXG BO2第二场 11.01
2020/11/02 DOTA
跟老齐学Python之有容乃大的list(4)
2014/09/28 Python
Python 存储字符串时节省空间的方法
2019/04/23 Python
解决win7操作系统Python3.7.1安装后启动提示缺少.dll文件问题
2019/07/15 Python
解决paramiko执行命令超时的问题
2020/04/16 Python
Django实现任意文件上传(最简单的方法)
2020/06/03 Python
基于OpenCV的路面质量检测的实现
2020/11/04 Python
美国领先的汽车轮胎和轮毂供应商:TireBuyer
2016/07/21 全球购物
如何通过jdbc调用存储过程
2012/04/19 面试题
演讲稿格式
2014/04/30 职场文书
产品生产计划书
2014/05/07 职场文书
任命书格式
2014/06/05 职场文书
复试通知单模板
2015/04/24 职场文书
go语言基础 seek光标位置os包的使用
2021/05/09 Golang
Tomcat项目启动失败的原因和解决办法
2022/04/20 Servers