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 相关文章推荐
Mootools 1.2教程 Tooltips
Sep 15 Javascript
javascript 时间比较实现代码
Oct 28 Javascript
主页面中的两个iframe实现鼠标拖动改变其大小
Apr 16 Javascript
JavaScript前端图片加载管理器imagepool使用详解
Dec 29 Javascript
如何改进javascript代码的性能
Apr 02 Javascript
详解Node.js包的工程目录与NPM包管理器的使用
Feb 16 Javascript
jquery+ajax实现直接提交表单实例分析
Jun 17 Javascript
详解vue.js组件化开发实践
Dec 14 Javascript
Angular中自定义Debounce Click指令防止重复点击
Jul 26 Javascript
vue中简单弹框dialog的实现方法
Feb 26 Javascript
小程序实现短信登录倒计时
Jul 12 Javascript
微信小程序canvas开发水果老虎机的思路详解
Feb 07 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文件缓存类用法实例分析
2015/04/22 PHP
php析构函数的简单使用说明
2015/08/24 PHP
浅析Yii2中GridView常见操作
2016/04/22 PHP
浅谈PHP中的
2016/04/23 PHP
PHP实现的下载远程文件类定义与用法示例
2017/07/05 PHP
基于jquery.Jcrop的头像编辑器
2010/03/01 Javascript
javascript 验证日期的函数
2010/03/18 Javascript
document.all的一个比较完整的总结及案例
2013/01/31 Javascript
JavaScript数据类型之基本类型和引用类型的值
2015/04/01 Javascript
javascript去除空格方法小结
2015/05/21 Javascript
基于JavaScript如何实现ajax调用后台定义的方法
2015/12/29 Javascript
js添加绑定事件的方法
2016/05/15 Javascript
微信小程序进行微信支付的步骤昂述
2016/12/01 Javascript
vue2.0中vue-cli实现全选、单选计算总价格的实例代码
2017/07/18 Javascript
vue多种弹框的弹出形式的示例代码
2017/09/18 Javascript
vue2里面ref的具体使用方法
2017/10/27 Javascript
详解从零搭建 vue2 vue-router2 webpack3 工程
2017/11/22 Javascript
关于 angularJS的一些用法
2017/11/29 Javascript
详解vue-router 命名路由和命名视图
2018/06/01 Javascript
Vue使用v-viewer实现图片预览
2020/10/21 Javascript
vue穿梭框实现上下移动
2021/01/29 Vue.js
Python程序语言快速上手教程
2012/07/18 Python
python正则匹配查询港澳通行证办理进度示例分享
2013/12/27 Python
详解python之协程gevent模块
2018/06/14 Python
Smallable意大利家庭概念店:设计师童装及家居装饰
2018/01/08 全球购物
Android interview questions
2016/12/25 面试题
介绍一下Java中的static关键字
2012/05/12 面试题
解释i节点在文件系统中的作用
2013/11/26 面试题
夜大毕业生自我鉴定
2013/10/31 职场文书
函授大专自我鉴定
2013/11/01 职场文书
大学信息公开实施方案
2014/03/09 职场文书
教师节学生演讲稿
2014/09/03 职场文书
2015年学生会工作总结范文
2015/03/31 职场文书
暂住证明怎么写
2015/06/19 职场文书
《半截蜡烛》教学反思
2016/02/19 职场文书
拙作再改《我的收音机情缘》
2022/04/05 无线电