美文网首页
js实现继承方式总结

js实现继承方式总结

作者: 星月西 | 来源:发表于2017-08-25 14:26 被阅读14次

1.原型链继承

将父类对象创建出来,赋给子类的原型对象

function SuperType(){

}

function SubType(){

}

SubType.prototype=new SuperType();

原型链继承的问题:
1.所有父类的属性和方法都会被子类的所有对象共享,有时候我们并不想共享父类的某些属性
2.创建子类对象时,不能向父类构造函数中传递参数

2.原型式继承

基于已有的对象创建新对象,Object.create方法规范了原型式继承

function object(o){
  function F(){}
  F.prototype=o;
  return new F();
}

3.寄生组合式继承

即在子类构造函数中调用父类构造函数来继承父类的属性,创建父类原型的一个副本,将其赋给子类原型对象

function SuperType(name){
  this.name=name;
}

function SubType(name,age){
  //调用父类构造函数继承属性
  SuperType.call(this,name);
  this.age=age;
}

inherit(SubType,SuperType);

function inherit(subType,superType){
  //拷贝父类原型对象,继承公共的方法
  var prototype=Object.create(superType);
  prototype.constructor=subType;
  subType.prototype=prototype;
}

相关文章

  • js实现继承方式总结

    1.原型链继承 将父类对象创建出来,赋给子类的原型对象 原型链继承的问题:1.所有父类的属性和方法都会被子类的所有...

  • JS继承的实现的几种方式

    前言 JS作为面向对象的弱类型语言,继承也是非常强大的特性之一,那么如何在JS实现继承呢? JS继承的实现方式 既...

  • js中的继承-原型与原型链

    面向对象的语言支持两种继承方式,接口继承和实现继承js无法实现接口继承,只支持实现继承,主要通过原型链来实现。具体...

  • JS继承

    JS中的继承 许多OO语言都支持两种继承方式:接口继承和实现继承; 因为JS中没有类和接口的概念 , 所以JS不支...

  • JS实现继承方式

    js中的继承: Object是所有对象的父级/父类型/超类型,js中所有的对象都直接或间接的继承自Object. ...

  • js基础之实现继承的几种方式

    js 实现继承的方式有: 原型链继承; 构造函数继承; 组合继承(原型链继承 + 构造函数继承)(最常用);(原型...

  • JS继承方式总结

    1、构造函数绑定方式 优点:简单易懂缺点:无法继承父类A的原型里的属性和方法 2、原型模式 优点:子类可以继承父类...

  • JavaScript 10

    js继承的概念 1.通过原型链方式实现继承(对象间的继承) 2.类式继承(构造函数间的继承) 由于js不像Java...

  • class-继承(es6)

    继承-JS 继承-class class-总结 Class 在语法上更加贴合面向对象的写法Class 实现继承更加...

  • js继承的实现

    下面是小结的js四种方式实现的继承

网友评论

      本文标题:js实现继承方式总结

      本文链接:https://www.haomeiwen.com/subject/iflihxtx.html