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工具 Event封装
Aug 21 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(三)情景对话中仿打字机输出文字
Jan 23 Javascript
JS实现商品倒计时实现代码
May 03 Javascript
Javascript基础教程之switch语句
Jan 18 Javascript
简介JavaScript中Math.cos()余弦方法的使用
Jun 15 Javascript
在Node.js中使用HTTP上传文件的方法
Jun 23 Javascript
基于jQuery Circlr插件实现产品图片360度旋转
Sep 20 Javascript
jQuery动态生成表格及右键菜单功能示例
Jan 13 Javascript
Ionic 2 实现列表滑动删除按钮的方法
Jan 22 Javascript
Javascript基础回顾之(二) js作用域
Jan 31 Javascript
Node.js如何响应Ajax的POST请求并且保存为JSON文件详解
Mar 10 Javascript
bootstrap fileinput实现文件上传功能
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 miniBB中文乱码问题解决方法
2008/11/25 PHP
解析PHP中ob_start()函数的用法
2013/06/24 PHP
php实现的click captcha点击验证码类实例
2014/09/23 PHP
VBScript版代码高亮
2006/06/26 Javascript
js 内存释放问题
2010/04/25 Javascript
JavaScript中发布/订阅模式的简单实例
2014/11/05 Javascript
javascript多行字符串的简单实现方式
2015/05/04 Javascript
浅析angularJS中的ui-router和ng-grid模块
2016/05/20 Javascript
AngularJS 过滤器的简单实例
2016/07/27 Javascript
Vuejs第六篇之Vuejs与form元素实例解析
2016/09/05 Javascript
Bootstrap幻灯片轮播图支持触屏左右手势滑动的实现方法
2016/10/13 Javascript
bootstrap table复杂操作代码
2016/11/01 Javascript
使用jQuery的ajax方法向服务器发出get和post请求的方法
2017/01/13 Javascript
Angular.JS去掉访问路径URL中的#号详解
2017/03/30 Javascript
js自定义弹框插件的封装
2020/08/24 Javascript
vue实现文件上传功能
2018/08/13 Javascript
layui复选框的全选与取消实现方法
2019/09/02 Javascript
原生js实现随机点名
2020/07/05 Javascript
Vue Router中应用中间件的方法
2020/08/06 Javascript
[02:56]《DAC最前线》之国外战队抵达上海备战亚洲邀请赛
2015/01/28 DOTA
Python的Django框架中的表单处理示例
2015/07/17 Python
Python自定义主从分布式架构实例分析
2016/09/19 Python
Python实现压缩和解压缩ZIP文件的方法分析
2017/09/28 Python
Python+request+unittest实现接口测试框架集成实例
2018/03/16 Python
详解Django将秒转换为xx天xx时xx分
2019/09/27 Python
使用Puppeteer爬取微信文章的实现
2020/02/11 Python
全球最大的游戏市场:G2A
2018/07/05 全球购物
个人实用简单的自我评价
2013/10/19 职场文书
大学生求职推荐信
2013/11/27 职场文书
母婴店促销方案
2014/03/05 职场文书
防沙治沙典型材料
2014/05/07 职场文书
学校募捐倡议书
2014/05/14 职场文书
幼师求职自荐信
2015/03/26 职场文书
消防宣传标语大全
2015/08/03 职场文书
《秋思》教学反思
2016/02/23 职场文书
Pyhton爬虫知识之正则表达式详解
2022/04/01 Python