【JavaScript】JS实现继承最常用的方法
2016-08-01 22:02
549 查看
既然JavaScript是OOP编程,那么就一定有继承这个概念。网络上搜了一下,比较乱,这里我做一下总结。
大体有三种方法:
1、apply/call,不能继承原型;
2、prototype,父类构造函数有参数时就失去了继承的意义,就变成了new一个对象;
3、apply/call和prototype混合使用。
其中,最常用的就是第三种,代码如下:
大体有三种方法:
1、apply/call,不能继承原型;
2、prototype,父类构造函数有参数时就失去了继承的意义,就变成了new一个对象;
3、apply/call和prototype混合使用。
其中,最常用的就是第三种,代码如下:
function A() { this.age=10; } A.prototype.name="jack"; function B() { A.apply(this);//继承A的自身属性 this.sex="remale"; } B.prototype = Object.create(A.prototype);//很关键,创建空对象继承父类的原型,保证不对父类进行修改 //B.prototype = A.prototype;//千万不能这样写,这样写会改变父类原型上的属性的值。 B.prototype.constructor = B;//这句话对结构没有什么影响,只是为了继承后结构的一致性,不然construtor指向A。 var b = new B(); alert("A的原型上的属性:"+b.name); alert("A的自身属性:"+b.age); alert("B的自身属性:"+b.sex);前面两种方法都有问题,就不贴了,附上链接:http://blog.csdn.net/kkkkkxiaofei/article/details/46474069
相关文章推荐
- 【Javascript】call方法实现JS中类的继承
- javascript 继承实现方法
- javascript继承实现方法
- js(javascript)实现C#stringbuild.appand()方法
- Javascript中继承的实现方法
- javascript(js)自动刷新页面的实现方法总结
- 在javascript中实现OO,通过prototype为类型添加方法,好像继承
- javascript实现继承的两种方法
- javascript面向对象编程实现[定义(静态)属性方法--继承]
- NO.5 JS常用页面数据录入校验方法(JavaScript Validation)
- javascript(js)自动刷新页面的实现方法总结
- 在Javascript中对Array的一些方法扩展,实现常用的查询处理。
- javascript 继承实现方法
- 用JavaScript实现单继承和多继承的简单方法
- JS 在数组插入字符的实现代码(可参考JavaScript splice() 方法)
- javascript framework, JS常用函数(方法),jQuery
- javascript继承实现方法(转)
- JavaScript 实现继承的六种方法
- JavaScript面向对象的方法实现继承:call方法
- javascript面向对象编程实现[定义(静态)属性方法--继承]