I have a base class ( Persona
, which implements some methods and in its constructor accepts parameters.
is the following
class Persona
{
constructor (nombre, apellido)
{
this.nombre = nombre;
this.apellido = apellido;
}
muestraNombre()
{
return this.nombre;
}
cambiaNombre(nuevoNombre)
{
this.nombre = nuevoNombre;
}
muestraApellido()
{
return this.apellido;
}
cambiaApellido(nuevoApellido)
{
this.apellido = nuevoApellido;
}
}
I also have another class ( Trabajador
) that inherits from Persona
class Trabajador extends Persona
{
constructor(nombre, apellido, nombreEmpresa, direccionEmpresa)
{
this.nombre = nombre;
this.apellido = apellido;
this.nombreEmpresa = nombreEmpresa;
this.direccionEmpresa = direccionEmpresa;
}
muestraNombreEmpresa()
{
return this.nombreEmpresa;
}
cambiaNombreEmpresa(nuevoNombreEmpresa)
{
this.nombreEmpresa = nuevoNombreEmpresa;
}
muestraDireccionEmpresa()
{
return this.direccionEmpresa;
}
cambiaDireccionEmpresa(nuevoDireccionEmpresa)
{
this.direccionEmpresa = nuevoDireccionEmpresa;
}
}
When I create a new instance of Persona
, it does it without problems
var perso = new Persona("pedro", "perez");
but when I try to instantiate class Trabajador
:
var traba = new Trabajador("Juan", "Perez", "Mi Empresita", "Aqui Mismito");
gives me the following error
Uncaught ReferenceError: this is not defined at Trabajador (Ejercicio 1.js:47) at Ejercicio 1.js:75
which is on the next line of class Trabajador
this.nombreEmpresa = nombreEmpresa;
What am I doing wrong?