js中继承的几种用法总结(apply,call,prototype)

转载 2016年06月01日 17:12:48

一,js中对象继承
js中有三种继承方式
1.js原型(prototype)实现继承

function Person(name,age){ this.name=name; this.age=age; } Person.prototype.sayHello=function(){ alert("使用原型得到Name:"+this.name); } var per=new Person("马小倩",21); per.sayHello(); //输出:使用原型得到Name:马小倩 function Student(){} Student.prototype=new Person("洪如彤",21); var stu=new Student(); Student.prototype.grade=5; Student.prototype.intr=function(){ alert(this.grade); } stu.sayHello();//输出:使用原型得到Name:洪如彤 stu.intr();//输出:5



2.构造函数实现继承

function Parent(name){ this.name=name; this.sayParent=function(){ alert("Parent:"+this.name); } } function Child(name,age){ this.tempMethod=Parent; this.tempMethod(name); this.age=age; this.sayChild=function(){ alert("Child:"+this.name+"age:"+this.age); } } var parent=new Parent("江剑臣"); parent.sayParent(); //输出:“Parent:江剑臣” var child=new Child("李鸣",24); //输出:“Child:李鸣 age:24” child.sayChild();



3.call , apply实现继承

function Person(name,age,love){ this.name=name; this.age=age; this.love=love; this.say=function say(){ alert("姓名:"+name); } } //call方式 function student(name,age){ Person.call(this,name,age); } //apply方式 function teacher(name,love){ Person.apply(this,[name,love]); //Person.apply(this,arguments); //跟上句一样的效果,arguments } //call与aplly的异同: //1,第一个参数this都一样,指当前对象 //2,第二个参数不一样:call的是一个个的参数列表;apply的是一个数组(arguments也可以) var per=new Person("武凤楼",25,"魏荧屏"); //输出:“武凤楼” per.say(); var stu=new student("曹玉",18);//输出:“曹玉” stu.say(); var tea=new teacher("秦杰",16);//输出:“秦杰” tea.say();


js中继承的几种用法总结(apply,call,prototype)

一,js中对象继承 js中有三种继承方式 1.js原型(prototype)实现继承 script type="text/javascript"> function Pers...
  • u014345282
  • u014345282
  • 2016年05月27日 20:17
  • 1342

Js中apply与call的区别与用法

解析:apply与call是更改对象的内部指针,即改变对象的this指向的内容。 call与apply的第一个参数都是要传入给当前对象的对象,及函数内部的this。后面的参数都是传递给当前对象的参数。...
  • wangji5850
  • wangji5850
  • 2016年03月17日 12:00
  • 1476

JavaScript中 apply/call 与面向对象语言中继承关系的联系和区别

apply是否可理解为类的继承?
  • sinat_27088253
  • sinat_27088253
  • 2016年10月24日 17:06
  • 587

js中继承的几种用法apply,call,prototype

一,js中对象继承 js中有三种继承方式 1,js原型(prototype)实现继承 [html] view plaincopyprint? span style="B...
  • wu_qionglei
  • wu_qionglei
  • 2013年04月11日 23:33
  • 1886

JS中的call()方法和apply()方法用法总结

JacvaScript中的call()方法和apply()方法, 1. 每个函数都包含两个非继承而来的方法:call()方法和apply()方法。 2. 相同点:这两个方法的作用是一样的。都是在特定的...
  • ganyingxie123456
  • ganyingxie123456
  • 2017年04月27日 15:14
  • 5042

js中继承的几种用法总结(apply,call,prototype)

转:http://www.jb51.net/article/44875.htm 一,js中对象继承 js中有三种继承方式 1.js原型(prototype)实现继承 复制代...
  • Lostyears
  • Lostyears
  • 2016年03月14日 17:48
  • 790

js中继承的几种用法总结(apply,call,prototype)

js中继承的几种用法总结(apply,call,prototype)   看到一篇介绍比较全面、详细的,备份!   本篇文章主要介绍了js中继承的几种用法总结(apply,call,proto...
  • xuxuechao6
  • xuxuechao6
  • 2016年10月18日 21:14
  • 69

[转载]js中继承的几种用法总结(apply,call,prototype)

http://www.jb51.net/article/44875.htm
  • aa309613128
  • aa309613128
  • 2014年09月06日 17:42
  • 319

js中继承的几种用法总结(apply,call,prototype)

js继承
  • shmnh
  • shmnh
  • 2016年04月18日 00:32
  • 297

js中继承的几种用法总结(apply,call,prototype)

本篇文章主要介绍了js中继承的几种用法总结(apply,call,prototype) 需要的朋友可以过来参考下,希望对大家有所帮助 一,js中对象继承 js中有三种继承方式 1.js原型(...
  • lijunlinlijunlin
  • lijunlinlijunlin
  • 2015年05月19日 00:30
  • 447
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:js中继承的几种用法总结(apply,call,prototype)
举报原因:
原因补充:

(最多只允许输入30个字)