Herança no ES5 (herança combinatória)

  A herança da classe ES6 usa a palavra-chave extends, então como é implementada no ES5?

  O ES5 usa uma combinação de objeto construtor e protótipo para simular herança, por isso também é chamado de herança combinada;

  O princípio básico: peça emprestado o construtor pai através de call () e aponte isso do tipo pai para este do subtipo;

  Essa herança está realmente chamando o construtor pai no construtor filho quando o construtor filho é chamado para criar o objeto de instância, então você pode obter os membros do construtor pai e modificar o presente do construtor pai chamado Basta apontar para uma sub-função, o membro será herdado na sub-função;

  Em uma palavra: use call () para chamar o construtor pai no construtor filho para obter herança; lembre-se de modificar isso no construtor pai para isso na função filho

função Pai (uname, idade) { 
  this.uname = uame; 
  this.age = idade;        
} 
function Filho (uname, idade) { 
  Father.call (this); 
}

  Método de herança de objeto de protótipo de empréstimo

Son.prototype = new father (); // Como o método no objeto protótipo de Father pode ser acessado através da cadeia de protótipos 
Son.prototype.constructor = Son; // A operação de atribuição acima fará o construtor de Son apontar para Father

  

Acho que você gosta

Origin www.cnblogs.com/joeynkay/p/12734884.html
Recomendado
Clasificación