javascript 写类方式之七


Posted in Javascript onJuly 05, 2009

、dojo.js的写类方式
dojo最新是1.3.1了,记得07年时还是0.4。文档也渐渐多了起来,用dojo的也慢慢多了。dojo还发布了core版,压缩后只有27kb。dojo中用dojo.declare方法来定义一个类。dojo.declare的源码就不贴在这里了。dojo.declare有三个参数,
参数1:类名className
参数2:继承的类superclass
参数3:构造器,方法props
单纯的定义一个类实际只需传第一,三两个参数。因为这里只讨论如何定义一个类,不讨论继承。代码如下:

//定义类名 
var className = "Person"; 
//定义构造器及方法 
var proto = { 
constructor : function(name){this.name=name;}, 
getName : function(){ return this.name;}, 
setName : function(name){ this.name = name;} 
} //定义类Person 
dojo.declare(className,null,proto); 
//创建一个对象 
var p = new Person("tom"); 
console.log(p.getName());//tom 
p.setName("jack"); 
console.log(p.getName());//jack 
//测试instanceof及p.constructor是否正确指向了Person 
console.log(p instanceof Person);//true 
console.log(p.constructor === Person);//true
Javascript 相关文章推荐
javascript入门·对象属性方法大总结
Oct 01 Javascript
ComboBox 和 DateField 在IE下消失的解决方法
Aug 30 Javascript
js类式继承的具体实现方法
Dec 31 Javascript
jquery.validate.js插件使用经验记录
Jul 02 Javascript
从数据库读取数据后将其输出成html标签的三种方法
Oct 13 Javascript
js实现鼠标感应向下滑动隐藏菜单的方法
Feb 20 Javascript
chrome下判断点击input上标签还是其余标签的实现方法
Sep 18 Javascript
详解Angular5/Angular6项目如何添加热更新(HMR)功能
Oct 10 Javascript
浅入深出Vue之自动化路由
Aug 06 Javascript
使用vue-cli3+typescript的项目模板创建工程的教程
Feb 28 Javascript
关于angular浏览器兼容性问题的解决方案
Jul 26 Javascript
jdk1.8+vue elementui实现多级菜单功能
Sep 24 Javascript
javascript 写类方式之六
Jul 05 #Javascript
javascript 写类方式之五
Jul 05 #Javascript
javascript 写类方式之四
Jul 05 #Javascript
javascript 写类方式之三
Jul 05 #Javascript
javascript 写类方式之二
Jul 05 #Javascript
javascript 写类方式之一
Jul 05 #Javascript
Javascript 调试利器 Firebug使用详解六
Jul 05 #Javascript
You might like
javascript 表单规则集合对象
2009/07/21 Javascript
javascript 必知必会之closure
2009/09/21 Javascript
jquery getScript动态加载JS方法改进详解
2012/11/15 Javascript
jQuery动画效果-slideUp slideDown上下滑动示例代码
2013/08/28 Javascript
JavaScript将数据转换成整数的方法
2014/01/04 Javascript
自己动手手写jQuery插件总结
2015/01/20 Javascript
JavaScript 基本概念
2015/01/20 Javascript
javascript中checkbox使用方法简单实例演示
2015/11/17 Javascript
Javascript基于AJAX回调函数传递参数实例分析
2015/12/15 Javascript
jQuery中的select操作详解
2016/11/29 Javascript
JS非空验证及邮箱验证的实例
2017/08/11 Javascript
通过V8源码看一个关于JS数组排序的诡异问题
2017/08/14 Javascript
JavaScript文本特效实例小结【3个示例】
2018/12/22 Javascript
[05:01]3.19DOTA2发布会 我们都是刀塔人
2014/03/25 DOTA
[46:12]完美世界DOTA2联赛循环赛 DM vs Matador BO2第一场 11.04
2020/11/04 DOTA
python使用rabbitmq实现网络爬虫示例
2014/02/20 Python
用map函数来完成Python并行任务的简单示例
2015/04/02 Python
mac下给python3安装requests库和scrapy库的实例
2018/06/13 Python
对Python捕获控制台输出流的方法详解
2019/01/07 Python
关于不懂Chromedriver如何配置环境变量问题解决方法
2019/06/12 Python
python实现简单的购物程序代码实例
2020/03/03 Python
canvas简单连线动画的实现代码
2020/02/04 HTML / CSS
台湾网购生鲜第一品牌:i3Fresh爱上新鲜
2017/10/26 全球购物
Manduka官网:瑜伽垫、瑜伽毛巾和服装
2018/07/02 全球购物
英国最全面的橄榄球联盟门票网站:Live Rugby Tickets
2018/10/06 全球购物
SEPHORA丝芙兰捷克官网:购买香水、化妆品和护肤品
2018/11/26 全球购物
俄罗斯卫浴采暖及维修用品超级市场:Dkrussia
2020/05/12 全球购物
为什么需要版本控制
2016/10/28 面试题
测量实习生自我鉴定
2013/09/19 职场文书
公司新员工的演讲稿注意事项
2014/01/01 职场文书
小学生国旗下演讲稿
2014/04/25 职场文书
煤矿安全演讲稿
2014/05/09 职场文书
学习三严三实心得体会
2014/10/13 职场文书
教师求职信怎么写
2015/03/20 职场文书
物业接待员岗位职责
2015/04/15 职场文书
nginx.conf配置文件结构小结
2022/04/08 Servers