JavaScript继承实现
来源:互联网 发布:心理教学软件 编辑:程序博客网 时间:2024/06/06 09:02
JavaScript高级程序设计第六章
1,通过原型链实现
基本思想:通过原型链让一个引用类型继承另一个引用类型的属性和方法
实现思路:将父类的实例赋给子类的原型
关键代码:SubType.prototype=new SuperType();
问题:父类实例属性变为子类的原型属性
2,借用构造函数
基本思想:在子类构造器中调用父类的构造器
关键代码:
function SubType(args){ SuperType.call(this, arg); //其他属性和方法 }
问题:无法继承父类的原型方法和属性;子类方法无法复用
3,组合继承
基本思想:结合以上两种方式:通过原型链实现对原型属性和方法的继承,通过构造器实现对实例属性和方法的继承。
问题:父类的属性和方法即存在于子类的原型中,又存在于子类的实例中。
4,原型式继承
基本思想:借用已有的对象创建新的对象
代码:
function object(o){ function F(); F.prototype=o; return new F();}
5,寄生式继承
基本思想:增强原型式继承
代码:
function createAnother(o){ var clone = object(o); clone.doSomething(){}//增强 return clone;}
6,寄生式组合继承
基本思路:将构造器继承和寄生式继承组合
完整代码:
function object(o){ function F(); F.prototype=o; return new F();}function inheritPrototype(superType,subType){ var clone = object(superType.prototype); subType.construct = subType; subTypr.prototype = clone;}//属性方法和参数略去function SuperType(){}function SubType(){ SuperType.call(this) //利用构造器}inheritPrototype(SuperType,SubType)
阅读全文
0 0
- [ JavaScript ] JavaScript 实现继承.
- 实现JavaScript的继承
- javascript 继承实现方法
- javascript 继承实现方式
- Javascript系列:实现继承
- javascript继承实现方法
- javascript 继承实现方法
- javascript 继承实现方法
- javascript 继承实现方法
- javascript 实现继承
- javascript实现继承
- javascript 继承实现方法
- javascript实现继承
- javascript 继承实现方式
- JavaScript继承的实现
- Javascript继承实现方式
- javascript【继承实现方式 】
- javascript继承实现
- A Mathematical Curiosity
- codeforces 889B. Restoration of string(拓扑排序)
- Rancher的管理员密码忘记怎么办?-登录RancherServer的mysql容器内,修改cattle库setting表中2个关于访问控制的字段的值
- pinpoint插件开发之二:从零开始新建一个插件
- 【AndroidStudio】手动配置gradle的方法
- JavaScript继承实现
- 对指针数组 数组指针 函数指针 函数指针数组 指向函数指针数组的指针的理解
- JavaScript 表单提交的三种方法
- 文件上传与下载和邮件开发
- MySQL多实例找回密码
- Java的System类封装工具类
- 用java代码实现tomcat+多线程
- CodeForce 446 Div.2 Wrath
- PyQt5应用与实践