Как создать класс в js с автовызываемым методом как __construct() в php? Допустим я хочу сделать класс Module, который будет наследовать дочерный класс TestModule, в котором будет метод run, который должен автоматически вызываться при создании экземпляра класса.
В php я бы сделал так:class Module {
public function __construct() {
$this->run();
}
}

class TestModule extends Module {
public function run() {
echo 'I`m TestModule';
}
}

(new TestModule());

21 Авг 2019 в 06:58
220 +1
0
Ответы
1

В JavaScript нет встроенного механизма автоматического вызова метода при создании экземпляра класса, как в PHP. Однако, можно достичь похожего функционала, используя конструктор класса и вызов метода внутри конструктора. Вот как это можно сделать:

class Module {
constructor() {
this.run();
}
run() {
console.log('I`m Module');
}
}
class TestModule extends Module {
run() {
console.log('I`m TestModule');
}
}
new TestModule();

В этом примере, при создании экземпляра класса TestModule, конструктор Module будет вызван, который в свою очередь вызовет метод run класса TestModule. Таким образом, при создании экземпляра класса TestModule будет выведено сообщение "I'm Module" и "I'm TestModule".

20 Апр 2024 в 13:10
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир