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 相关文章推荐
IE浏览器兼容Firefox的JS脚本的代码
Oct 23 Javascript
超越Jquery_01_isPlainObject分析与重构
Oct 20 Javascript
jQuery 遍历-nextUntil()方法以及prevUntil()方法的使用介绍
Apr 26 Javascript
from 表单提交返回值用post或者是get方法实现
Aug 21 Javascript
window.onload与$(document).ready()的区别分析
May 30 Javascript
jquery制做精致的倒计时特效
Jun 13 Javascript
AngularJS中比较两个数组是否相同
Aug 24 Javascript
jQuery插件HighCharts实现2D柱状图、折线图的组合多轴图效果示例【附demo源码下载】
Mar 09 Javascript
bootstrap daterangepicker汉化以及扩展功能
Jun 15 Javascript
jQuery中库的引用方法
Jan 06 jQuery
Vue实现商品详情页的评价列表功能
Sep 04 Javascript
Typescript的三种运行方式(小结)
Sep 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短址转换实现方法
2015/02/25 PHP
php自动给网址加上链接的方法
2015/06/02 PHP
Zend Framework教程之分发器Zend_Controller_Dispatcher用法详解
2016/03/07 PHP
php进行ip地址掩码运算处理的方法
2016/07/11 PHP
详解JavaScript函数绑定
2013/08/18 Javascript
javascript实现日期格式转换
2014/12/16 Javascript
jQuery在页面加载时动态修改图片尺寸的方法
2015/03/20 Javascript
使用jQuery在移动页面上添加按钮和给按钮添加图标
2015/12/04 Javascript
javascript实现下雪效果【实例代码】
2016/05/03 Javascript
详解Angular的8个主要构造块
2017/06/20 Javascript
vuex 项目结构目录及一些简单配置介绍
2018/04/08 Javascript
Angular模版驱动表单的使用总结
2018/05/05 Javascript
详解Vue This$Store总结
2018/12/17 Javascript
《javascript设计模式》学习笔记七:Javascript面向对象程序设计组合模式详解
2020/04/08 Javascript
vue data有值,但是页面{{}} 取不到值的解决
2020/11/09 Javascript
Vue+scss白天和夜间模式切换功能的实现方法
2021/01/05 Vue.js
[01:41]DOTA2超级联赛专访YYF 称一辈子难忘TI2
2013/05/28 DOTA
[02:15]你好,这就是DOTA!
2015/08/05 DOTA
Flask框架的学习指南之制作简单blog系统
2016/11/20 Python
Django学习笔记之Class-Based-View
2017/02/15 Python
python 字符串转列表 list 出现\ufeff的解决方法
2017/06/22 Python
python使用matplotlib绘制热图
2018/11/07 Python
python语言元素知识点详解
2019/05/15 Python
python中return如何写
2020/06/18 Python
video.js支持m3u8格式直播的实现示例
2020/05/20 HTML / CSS
Raleigh兰令自行车美国官网:英国凤头牌自行车
2018/01/08 全球购物
应用数学自荐书范文
2013/11/24 职场文书
村创先争优活动总结
2014/08/28 职场文书
标准单位租车协议书
2014/09/23 职场文书
工人先锋号申报材料
2014/12/29 职场文书
竞聘书的秘诀
2019/04/02 职场文书
Vue如何实现组件间通信
2021/05/15 Vue.js
MySQL查看表和清空表的常用命令总结
2021/05/26 MySQL
一篇文章带你了解Python和Java的正则表达式对比
2021/09/15 Python
JavaScript 定时器详情
2021/11/11 Javascript
微信小程序 根据不同用户切换不同TabBar
2022/04/21 Javascript