motokraft
@motokraft
Кратко о себе

Как создать класс знаю только его имя?

Здравствуйте! Есть код который создает имя класса, не могу понять как из переменной инициализировать этот класс через new или что то еще....

Есть вот такой класс
class TestPlugin extends Object {}

Я хочу создать его из по имени из переменной по че та не получается....
let plugin_name = 'Test';
let _class = plugin_name + 'Plugin';
console.log(_class, new _class);

Выводиться ошибка
Uncaught TypeError: _class is not a constructor
  • Вопрос задан
  • 117 просмотров
Пригласить эксперта
Ответы на вопрос 1
Leathi
@Leathi
В JavaScript нельзя создавать классы, обьекты и т.д из строки
И еще нельзя создавать классы через new

let plugin_name = 'Test';
let _class = plugin_name + 'Plugin';
console.log(class _class {}); //  class _class {}

Так не получится.

Но ты можешь сделать обьект и в строку присвоить анонимный класс
let classes = {
  [_class]: class {}
}
console.log(classes['TestPlugin']); // class {}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы