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 相关文章推荐
jQuery的学习步骤
Feb 23 Javascript
javascript和HTML5利用canvas构建猜牌游戏实现算法
Jul 17 Javascript
判断日期是否能跨月查询的js代码
Jul 25 Javascript
JavaScript实现动画打开半透明提示层的方法
Apr 21 Javascript
javascript实现数组去重的多种方法
Mar 14 Javascript
微信小程序 选项卡的简单实例
May 24 Javascript
js获取地址栏参数的两种方法
Jun 27 Javascript
微信小程序获取循环元素id以及wx.login登录操作
Aug 17 Javascript
vue.js实现格式化时间并每秒更新显示功能示例
Jul 07 Javascript
JavaScript函数apply()和call()用法与异同分析
Aug 10 Javascript
详解如何快速配置webpack多入口脚手架
Dec 28 Javascript
基于vue中的scoped坑点解说
Sep 04 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
40年前的这部特摄片恐龙特级克塞号80后的共同回忆
2020/03/08 日漫
SONY ICF-SW07收音机电路分析
2021/03/02 无线电
Classes and Objects in PHP5-面向对象编程 [1]
2006/10/09 PHP
thinkphp实现数组分页示例
2014/04/13 PHP
Symfony2之session与cookie用法小结
2016/03/18 PHP
利用PHP自动生成印有用户信息的名片
2016/08/01 PHP
PHP实现在数据库百万条数据中随机获取20条记录的方法
2017/04/19 PHP
PHP自定义函数实现数组比较功能示例
2017/10/19 PHP
用函数式编程技术编写优美的 JavaScript
2006/11/25 Javascript
原生javaScript做得动态表格(注释写的很清楚)
2013/12/29 Javascript
Javascript 按位与赋值运算符 (&amp;=)使用介绍
2014/02/04 Javascript
如何在MVC应用程序中使用Jquery
2014/11/17 Javascript
JavaScript实现的伸展收缩型菜单代码
2015/10/14 Javascript
jquery事件的ready()方法使用详解
2015/11/11 Javascript
jQuery动画效果实现图片无缝连续滚动
2016/01/12 Javascript
在线引用最新jquery文件的实现方法
2016/08/26 Javascript
AngularJS使用ng-Cloak阻止初始化闪烁问题的方法
2016/11/03 Javascript
Angular4集成ng2-file-upload的上传组件
2018/03/14 Javascript
微信小程序项目实践之九宫格实现及item跳转功能
2018/07/19 Javascript
[04:38]完美世界携手游戏风云打造 卡尔工作室饰品系统篇
2013/04/25 DOTA
详解Python 正则表达式模块
2018/11/05 Python
Python控制Firefox方法总结
2019/06/03 Python
解决Python3用PIL的ImageFont输出中文乱码的问题
2019/08/22 Python
PyCharm 无法 import pandas 程序卡住的解决方式
2020/03/09 Python
如何利用python检测图片是否包含二维码
2020/10/15 Python
Html5 语法与规则简要概述
2014/07/29 HTML / CSS
深入探究HTML5的History API
2015/07/09 HTML / CSS
韩国休闲女装品牌网站:ANAIS
2016/08/24 全球购物
加拿大在线隐形眼镜专家:PerfectLens.ca
2016/11/19 全球购物
C#公司笔试题
2014/03/28 面试题
教师节促销方案
2014/03/22 职场文书
六查六看个人剖析材料
2014/10/14 职场文书
银行催款通知书
2015/04/17 职场文书
离婚律师函范本
2015/05/27 职场文书
终止解除劳动合同证明书
2015/06/17 职场文书
laravel ajax curd 搜索登录判断功能的实现
2021/04/17 PHP