¿Qué palabras clave se pueden usar para implementar la herencia en ES6?

En este artículo, discutiremos las palabras clave que se pueden usar para implementar la herencia en es6. En JavaScript , las palabras clave «extiende», «esto» y «super» se usan para implementar la herencia.

Palabra clave Extends: para construir una clase que es hija de otra clase, use la palabra clave extends en declaraciones de clase o expresiones de clase. Los métodos de la clase principal se transmiten a la clase secundaria.

  • JavaScript esta palabra clave: La palabra clave «esto» se refiere al objeto que actualmente está ejecutando el código. Se refiere al objeto que ahora está realizando la función. “esto” se refiere a la variable u objeto global si la función se denomina función normal.
  • Palabra clave super de JavaScript: la palabra clave super se usa para adquirir los métodos y propiedades del padre inmediato llamando al constructor de la clase padre. se utiliza para acceder al objeto principal, sus propiedades y métodos.

vamos a demostrar algunos ejemplos de estas palabras clave.

Ejemplo 1: en este ejemplo, la clase de manzana se extiende desde la clase de frutas, ya que no usamos esta palabra clave en console.log() , los valores en la array de la clase principal no se usan en la clase secundaria. 

Javascript

<script>
  class fruits {
    constructor(benefits) {
      this.benefits = ["vitamins", "minerals"];
    }
  }
  class apple extends fruits {
    constructor(benefits) {
      super(benefits);
      console.log("apples provide : " + benefits.join(" and "));
    }
  }
  obj = new apple(["fibre", "lung strength"]);
</script>

Producción:

apples provide : fibre and lung strength

Ejemplo 2: este código es similar al anterior, pero la diferencia es que después de usar el método super en la array de beneficios, usamos esta palabra clave, que apunta a la array definida en la clase principal.

Javascript

<script>
  class fruits {
    constructor(benefits) {
      this.benefits = ["vitamins", "minerals"];
    }
  }
  class apple extends fruits {
    constructor(benefits) {
      super(benefits);
      console.log("apples provide : " +
                  this.benefits.join(" and "));
    }
  }
  obj = new apple(["fibre", "lung strength"]);
</script>

Producción:

apples provide : vitamins and minerals

Ejemplo 3: En el siguiente ejemplo, definimos una clase que tiene ciertos métodos. la clase pingüino se extiende desde la clase padre, es decir, aves, que tiene otro método nadar(). La clase pingüino contiene todos los métodos de la clase principal. Comprendamos cómo usar las palabras clave «esto», «super» y «extiende» en este ejemplo.

HTML

<script>
   class birds {
     constructor(name) {
       this.name = name;
     }
     eat() {
       console.log("birds eat");
     }
     sleep() {
       console.log("birds sleep");
     }
   }
   class penguin extends birds {
     constructor(name) {
       super(name);
     }
     swim() {
       console.log("I'm " + this.name + 
                   " i can also swim!!");
     }
   }
   obj = new penguin("peggy");
   obj.swim();
   obj.sleep();
</script>

Producción:

"I'm peggy i can also swim!!"
"birds sleep"

Publicación traducida automáticamente

Artículo escrito por isitapol2002 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *