js的三种继承方式详解


Posted in Javascript onJanuary 21, 2017

1.js原型(prototype)实现继承

代码如下

<body> 
<script type="text/javascript"> 
 function Parent(name,age){
   this.name=name;
   this.age=age;
   this.sayHi=function(){
    alert("Hi, my name is "+this.name+", my age is "+this.age);
   }
  }
//Child继承Parent
  function Child(grade){
   this.grade=grade;
   this.sayGrade=function(){
    alert("My grade is "+this.grade);
   }
  }
  Child.prototype=new Parent("小明","10");/////////// 
  var chi=new Child("5");
  chi.sayHi();
  chi.sayGrade();
</script> 
</body>

2.构造函数实现继承 

代码如下:

<body> 
<script type="text/javascript"> 
 function Parent(name,age){
   this.name=name;
   this.age=age;
   this.sayHi=function(){
    alert("Hi, my name is "+this.name+", my age is "+this.age);
   }
  }
//Child继承Parent 
  function Child(name,age,grade){
   this.grade=grade;
   this.sayHi=Parent;///////////
   this.sayHi(name,age);
   this.sayGrade=function(){
    alert("My grade is "+this.grade);
   }
  }
  var chi=new Child("小明","10","5");
  chi.sayHi();
  chi.sayGrade();
</script> 
</body>

3.call , apply实现继承         -----很方便!

代码如下:

<body> 
<script type="text/javascript"> 
 function Parent(name,age){
   this.name=name;
   this.age=age;
   this.sayHi=function(){
    alert("Hi, my name is "+this.name+", my age is "+this.age);
   }
  }
  function Child(name,age,grade){
   this.grade=grade;
   // Parent.call(this,name,age);/////////// 
   // Parent.apply(this,[name,age]);/////////// 都可
   Parent.apply(this,arguments);/////////// 
   this.sayGrade=function(){
    alert("My grade is "+this.grade);
   }
  // this.sayHi=function(){
   //  alert("Hi, my name is "+this.name+", my age is "+this.age+",My grade is "+this.grade);
   // }
  }
  var chi=new Child("小明","10","5");
  chi.sayHi();
  chi.sayGrade();
</script> 
</body>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
Prototype 学习 工具函数学习($w,$F方法)
Jul 12 Javascript
javascript appendChild,innerHTML,join性能比较代码
Aug 29 Javascript
11款基于Javascript的文件管理器
Oct 25 Javascript
javascript GUID生成器实现代码
Oct 31 Javascript
一个简单的js渐显(fadeIn)渐隐(fadeOut)类
Jun 19 Javascript
jQuery常用操作方法及常用函数总结
Jun 19 Javascript
webpack中引用jquery的简单实现
Jun 08 Javascript
JS中用childNodes获取子元素换行会产生一个子元素
Dec 08 Javascript
js实现淡入淡出轮播切换功能
Jan 13 Javascript
Iphone手机、安卓手机浏览器控制默认缩放大小的方法总结(附代码)
Aug 18 Javascript
Vue.JS实现垂直方向展开、收缩不定高度模块的JS组件
Jun 19 Javascript
发布Angular应用至生产环境的方法
Dec 10 Javascript
微信小程序 天气预报开发实例代码源码
Jan 20 #Javascript
微信小程序 自定义对话框实例详解
Jan 20 #Javascript
Vue实例简单方法介绍
Jan 20 #Javascript
微信小程序 Toast自定义实例详解
Jan 20 #Javascript
JavaScript判断浏览器及其版本信息
Jan 20 #Javascript
JS中传递参数的几种不同方法比较
Jan 20 #Javascript
JS出现失效的情况总结
Jan 20 #Javascript
You might like
PHP输出控制功能在简繁体转换中的应用
2006/10/09 PHP
php生成静态文件的多种方法分享
2012/07/17 PHP
PHP发送短信代码分享
2015/08/11 PHP
解决 FireFox 下[使用event很麻烦] 的问题.
2006/08/22 Javascript
javascript full screen 全屏显示页面元素的方法
2013/09/27 Javascript
jQuery之字体大小的设置方法
2014/02/27 Javascript
推荐10个2014年最佳的jQuery视频插件
2014/11/12 Javascript
JavaScript实现跨浏览器的添加及删除事件绑定函数实例
2015/08/04 Javascript
分享JS数组求和与求最大值的方法
2016/08/11 Javascript
jQuery的 $.ajax防止重复提交的两种方法(推荐)
2016/10/14 Javascript
jQuery select自动选中功能实现方法分析
2016/11/28 Javascript
微信小程序 es6-promise.js封装请求与处理异步进程
2017/06/12 Javascript
bootstrap fileinput插件实现预览上传照片功能
2018/01/23 Javascript
js实现点击按钮复制文本功能
2020/07/20 Javascript
bootstrap table实现iview固定列的效果实例代码详解
2019/09/30 Javascript
详解Vue template 如何支持多个根结点
2020/02/10 Javascript
js实现前端界面导航栏下拉列表
2020/08/27 Javascript
[47:31]完美世界DOTA2联赛PWL S3 INK ICE vs DLG 第一场 12.12
2020/12/16 DOTA
Python while 循环使用的简单实例
2016/06/08 Python
详解python算法之冒泡排序
2019/03/05 Python
jenkins配置python脚本定时任务过程图解
2019/10/29 Python
Pytorch Tensor基本数学运算详解
2019/12/30 Python
PyTorch中topk函数的用法详解
2020/01/02 Python
Python中zip函数如何使用
2020/06/04 Python
Python rabbitMQ如何实现生产消费者模式
2020/08/24 Python
如何快速理解python的垃圾回收机制
2020/09/01 Python
Python filter()及reduce()函数使用方法解析
2020/09/05 Python
Canvas实现贝赛尔曲线轨迹动画的示例代码
2019/04/25 HTML / CSS
澳大利亚药房在线:ThePharmacy
2017/10/04 全球购物
一个SQL面试题
2014/08/21 面试题
教育学专业毕业生的自我评价
2013/11/21 职场文书
酒店总经理助理岗位职责
2014/02/01 职场文书
促销活动总结报告
2014/04/26 职场文书
管理失职检讨书范文
2015/05/05 职场文书
小学家庭教育心得体会
2016/01/14 职场文书
2022年四月新番
2022/03/15 日漫