Digamos que tengo una clase principal y una secundaria como se muestra a continuación.
class Person { constructor(name) { this.name = name } greeting() { console.log(`Hi! I'm ${this.name}`); }; } class Teacher extends Person { constructor(first, subject) { super(first); this.subject = subject; } }
ahora digamos que creo un objeto global de la clase secundaria
globalThis.teachers = new Teacher("Roby", "Math")
este objeto global puede acceder directamente al nombre de la propiedad de la clase principal. Entonces, puedo llamar,
globalThis.teachers.name \\Will contain Roby
Pero, ¿puedo llamar al método de la clase principal, saludo () así directamente sin anularlo de la siguiente manera?
globalThis.teachers.greeting() \\Will print in console
Retazo:
class Person { constructor(name) { this.name = name } greeting() { console.log(`Hi! I'm ${this.name}`); }; } class Teacher extends Person { constructor(first, subject) { super(first); this.subject = subject; } } globalThis.teachers = new Teacher("Roby", "Math") console.log(globalThis.teachers.name); globalThis.teachers.greeting();
¿Es como todos los métodos de clase principal a los que quiero acceder? Tendré que anularlo en el elemento secundario y desde allí tendré que llamar a super.greeting().