Javascript面向对象之四 继承


Posted in Javascript onFebruary 08, 2011
var JsObject = {} || new Object(); 
JsObject.extend = function(subClass, superClass){ 
 //先判断子类subClass是否已经定义,如果未定义,则重新定义类。 

if(typeof subClass == "undefined")subClass = function(){}; 

  //如果父类superClass是类,则转化成对象 

 if(typeof superClass == "function")superClass = new superClass(); 

 //遍历父类superClass对象中的属性和方法 
for(var p in superClass) 
{ 


 /*将父类superClass对象中的属性和方法复制到子类prototype对象中, 


 因此子类拥有父类的所有特性,即为继承 */
  
subClass.prototype[p] = superClass[p]; 
} 
return subClass; 
}; 
function Student() 
{ 
this.name = "张三"; 
this.updateName = function(name){ 
this.name = name; 
} 
} 
function Class1() 
{ 
this.sex = "男"; 
this.updateSex = function(sex){ 
this.sex = sex; 
} 
} 
//定义类Class1继承Student类 
Class1 = JsObject.extend(Class1, Student); 
var obj = new Class1(); 
alert(obj.sex); 
alert(obj.name); 
obj.updateSex("女"); 
obj.updateName("玛丽"); 
alert(obj.sex); 
alert(obj.name);

结果显示:男,张三,女,玛丽
Javascript 相关文章推荐
jquery ajax 检测用户注册时用户名是否存在
Nov 03 Javascript
基于jquery的用鼠标画出可移动的div
Sep 06 Javascript
JS幻灯片可循环播放可平滑旋转带滚动导航(自写)
Aug 05 Javascript
JavaScript的Polymer框架中dom-repeat与VM的相关操作
Jul 29 Javascript
drag-and-drop实现图片浏览器预览
Aug 06 Javascript
JS实现移动端判断上拉和下滑功能
Aug 07 Javascript
浅析webpack 如何优雅的使用tree-shaking(摇树优化)
Aug 16 Javascript
JS在if中的强制类型转换方式
Jul 15 Javascript
ES6 let和const定义变量与常量的应用实例分析
Jun 27 Javascript
JS数组splice操作实例分析
Oct 12 Javascript
javascript设计模式 ? 命令模式原理与用法实例分析
Apr 20 Javascript
vue实现移动端input上传视频、音频
Aug 18 Javascript
javascript面向对象之二 命名空间
Feb 08 #Javascript
javascript中的对象创建 实例附注释
Feb 08 #Javascript
kmock javascript 单元测试代码
Feb 06 #Javascript
一次失败的jQuery优化尝试小结
Feb 06 #Javascript
DOM_window对象属性之--clipboardData对象操作代码
Feb 03 #Javascript
基于jQuery的自动完成插件
Feb 03 #Javascript
jQuery初学:find()方法及children方法的区别分析
Jan 31 #Javascript
You might like
IIS+PHP+MySQL+Zend配置 (视频教程)
2006/12/13 PHP
不用mod_rewrite直接用php实现伪静态化页面代码
2008/10/04 PHP
如何使用FireFox插件FirePHP调试PHP
2013/07/23 PHP
php断点续传之如何分割合并文件
2014/03/22 PHP
PHP文件系统管理(实例讲解)
2017/09/19 PHP
php empty 函数判断结果为空但实际值却为非空的原因解析
2018/05/28 PHP
对google个性主页的拖拽效果的js的完整注释[转]
2007/04/10 Javascript
利用jQuery接受和处理xml数据的代码(.net)
2011/03/28 Javascript
MooBox 基于Mootools的对话框插件
2012/01/20 Javascript
jquery、js操作checkbox全选反选
2014/03/12 Javascript
Angularjs之filter过滤器(推荐)
2016/11/27 Javascript
基于MVC方式实现三级联动(JavaScript)
2017/01/23 Javascript
Node.js调试技术总结分享
2017/03/12 Javascript
node.js中debug模块的简单介绍与使用
2017/04/25 Javascript
angular1.x ui-route传参的三种写法小结
2018/08/31 Javascript
vue-video-player 解决微信自动全屏播放问题(横竖屏导致样式错乱问题)
2020/02/25 Javascript
[01:01:29]2018DOTA2亚洲邀请赛 4.4 淘汰赛 VP vs Liquid 第一场
2018/04/05 DOTA
python根据txt文本批量创建文件夹
2020/12/08 Python
Python qqbot 实现qq机器人的示例代码
2019/07/11 Python
用Python配平化学方程式的方法
2019/07/20 Python
python爬虫 基于requests模块发起ajax的get请求实现解析
2019/08/20 Python
在python Numpy中求向量和矩阵的范数实例
2019/08/26 Python
基于python的列表list和集合set操作
2019/11/24 Python
Tensorflow 卷积的梯度反向传播过程
2020/02/10 Python
Python制作简易版小工具之计算天数的实现思路
2020/02/13 Python
python实现翻译word表格小程序
2020/02/27 Python
python读取hdfs上的parquet文件方式
2020/06/06 Python
用pip给python安装matplotlib库的详细教程
2021/02/24 Python
科沃斯机器人官网商城:Ecovacs
2016/08/29 全球购物
电信专业应届生自荐信
2013/09/28 职场文书
工程安全员岗位职责
2014/03/09 职场文书
国家奖学金获奖感言
2014/08/16 职场文书
工作作风承诺书
2014/08/30 职场文书
个人投资合作协议书
2014/10/12 职场文书
保卫工作个人总结
2015/03/03 职场文书
少年雷锋观后感
2015/06/10 职场文书