Javascript 面向对象 继承


Posted in Javascript onMay 13, 2010
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后$冲突的解决办法
Jul 09 Javascript
javascript 循环调用示例介绍
Nov 20 Javascript
AngularJS的表单使用详解
Jun 17 Javascript
jQuery Tags Input Plugin(添加/删除标签插件)详解
Jun 20 Javascript
Summernote实现图片上传功能的简单方法
Jul 11 Javascript
jQuery层次选择器用法示例
Sep 09 Javascript
JQuery Ajax WebService传递参数的简单实例
Nov 02 Javascript
js实现的xml对象转json功能示例
Dec 24 Javascript
微信小程序 两种滑动方式(横向滑动,竖向滑动)详细及实例代码
Jan 13 Javascript
vue.js实现条件渲染的实例代码
Jun 22 Javascript
仿京东快报向上滚动的实例
Dec 13 Javascript
微信小程序scroll-x失效的完美解决方法
Jul 18 Javascript
Javascript 面向对象 对象(Object)
May 13 #Javascript
Javascript 面向对象 命名空间
May 13 #Javascript
javascript 面向对象 function类
May 13 #Javascript
该如何加载google-analytics(或其他第三方)的JS
May 13 #Javascript
Javascript 面向对象 继承
May 13 #Javascript
Javascript 面向对象 重载
May 13 #Javascript
JavaScript 面向对象的 私有成员和公开成员
May 13 #Javascript
You might like
《PHP边学边教》(01.开篇――准备工作)
2006/12/13 PHP
php adodb介绍
2009/03/19 PHP
php验证手机号码(支持归属地查询及编码为UTF8)
2013/02/01 PHP
解析php中heredoc的使用方法
2013/06/17 PHP
PHP实现路由映射到指定控制器
2016/08/13 PHP
PHP实现简单ajax Loading加载功能示例
2016/12/28 PHP
PHP 实现页面静态化的几种方法
2017/07/23 PHP
js获取单元格自定义属性值的代码(IE/Firefox)
2010/04/05 Javascript
深入理解JSON数据源格式
2014/01/10 Javascript
AngularJS + Node.js + MongoDB开发的基于高德地图位置的通讯录
2015/01/02 Javascript
JS获取表格内指定单元格html内容的方法
2015/03/31 Javascript
JavaScript控制按钮可用或不可用的方法
2015/04/03 Javascript
jquery实现下拉框多选方法介绍
2017/01/03 Javascript
详解如何去除vue项目中的#——History模式
2017/10/13 Javascript
浅析java线程中断的办法
2018/07/29 Javascript
mpvue+vuex搭建小程序详细教程(完整步骤)
2018/09/30 Javascript
微信小程序 腾讯地图SDK 获取当前地址实现解析
2019/08/12 Javascript
vue项目启动出现cannot GET /服务错误的解决方法
2020/04/26 Javascript
vuex的使用步骤
2021/01/06 Vue.js
基于python(urlparse)模板的使用方法总结
2017/10/13 Python
python网络爬虫之如何伪装逃过反爬虫程序的方法
2017/11/23 Python
Python3实现的字典遍历操作详解
2018/04/18 Python
Python 中的range(),以及列表切片方法
2018/07/02 Python
Python 生成 -1~1 之间的随机数矩阵方法
2018/08/04 Python
解决在pycharm中显示额外的 figure 窗口问题
2019/01/15 Python
python学生管理系统的实现
2020/04/05 Python
印尼美容产品购物网站:PerfectBeauty.id
2017/12/01 全球购物
西班牙电子产品购物网站:Electronicamente
2018/07/26 全球购物
学习委员自我鉴定
2014/01/13 职场文书
市场营销管理毕业生自荐信
2014/03/03 职场文书
学生旷课检讨书500字
2014/10/28 职场文书
2014年减负工作总结
2014/12/10 职场文书
人生一定要学会的三样东西:放下、忘记、珍惜
2019/08/21 职场文书
创业计划书之溜冰场
2019/10/25 职场文书
JVM钩子函数的使用场景详解
2021/08/23 Java/Android
Win11怎么进入安全模式?Windows 11进入安全模式的方法
2021/11/21 数码科技