常见的javaScript中的继承方法

关于javascript的继承,我这里大致分为es5的继承方法和es6的继承方法

一、ES5的继承方法

ES5继承有以下六种方法

1、原型链继承

JavaScript实现继承的基本思想:通过原型将一个引用类型继承另一个引用类型的属性和方法

2、借用构造函数继承(伪造对象或经典继承)

JavaScript实现继承的基本思想:在子类构造 函数内部调用超类型构造函数。 通过使用apply()和call()方法可以在新创建的子类对象上执行构造函数

3、组合继承(原型+借用构造)(伪经典继承)

JavaScript实现继承的基本思想:将原型链和 借用构造函数的技术组合在一块,从而发挥两者之长的一种继承模式,将原型链和借用构造函数的技术组合到一起,从而取长补短发挥两者长处的一种继承模式

4、原型式继承

JavaScript实现继承的基本思想:借助原型可以基于已有的对象创建新对象, 同时还不必须因此创建自定义的类型

5、寄生式继承

JavaScript实现继承的基本思想:创建一个仅用于封装继承过程的函数,该函数在内部以某种方式来增强对象,最后再像真正是它做了所有工作一样返回对象。寄生式继承是原型式继承的加强版

6、寄生组合式继承

JavaScript实现继承的基本思想:通过借用函数来继承属性,通过原型链的混成形式来继承方法

二、ES6的继承方法:

1、使用class构造一个父类

class Parent {
     constructor(name,age){
       this.name = name
        this.age = age
      }

      sayName(){
        console.log(this.name);
      }

  }

2、使用class构造一个子类,并使用extends实现继承,super指向父类的原型对象

class Child extends Parent{      
    constructor(name,age,gender){    
        super(name,age) 
       this.gender = gender 
     }
     
     sayGender(){     
       console.log(this.gender);        
     }
     
   }

3、实例化对象

const ming = new Child('ming',18,'男')

ming.sayGender()  
 ming.sayName()   
 console.log(ming.name);   
 console.log(ming.age)
上一篇:postman连接数据库 xmysql


下一篇:Kubernetes的运行流程是怎样的?