super()
JavaScript · Unidad 13: Herencia
- Plan completo
- JavaScript
- 10 ejercicios
Si la hija necesita un dato más, escribe su propio constructor. Pero antes de guardar lo suyo, llama al de la madre con super(...): le pasa lo que la madre necesita, y la madre lo guarda.
class Animal {
constructor(nombre) {
this.nombre = nombre;
}
}
class Perro extends Animal {
constructor(nombre, raza) {
super(nombre);
this.raza = raza;
}
}
const p = new Perro("Rex", "pug");
console.log(p.nombre, p.raza);Imprime
Rex pug
El resto de la explicación está en la lección, que es del plan completo.
Ejercicios de esta lección
Se hacen en la app, que los corrige al momento y explica por qué.
1. Predice la salida
¿Qué imprime este código?
2. Completa el código
Completa para que el constructor de
Chefle pase el nombre al deEmpleado.3. Encuentra el bug
Este programa debería imprimir "Kira 7". ¿Qué línea tiene el error?
4. Opción múltiple
En el constructor de una hija, ¿por qué
super(...)va antes que cualquierthis.algo = ...?5. Predice la salida
Los dos constructores imprimen algo. ¿Qué sale?
6. Predice la salida
¿Qué imprime este código?
7. Encuentra el bug
Este programa debería imprimir "Kia 4". ¿Qué línea tiene el error?
8. Ordena las líneas
Una contraseña necesita 8 letras. Ordena el programa que crea el error para una de 5 e imprime su mensaje y cuántas le faltan.
9. Encuentra el caso que falla
medir(a, b)regresa el área de un rectángulo deaporb. Si solo le das un lado, usa unCuadrado, y el área debería ser lado por lado. ¿Con qué llamada falla?10. Predice la salida
Ana abre una cuenta de nómina y le cae su sueldo. ¿Qué imprime?
Se abre en el navegador. Esta lección es del plan completo; la primera unidad de cada curso es gratis.