Например, есть несколько классов classA, classB и мне необходимо создать класс динамически, как в php.
class classA {
constructor(parametrs) {
this.parametrs = JSON.parse(parametrs);
}
};
class classB {
constructor(parametrs) {
this.parametrs = JSON.parse(parametrs);
}
};
Как правильно создать класс по такому принципу:
let newClass = new 'classA' ('{"width":"0","height":"0"}');
В данном случае достаточно просто сохранить классы в объект что-то вроде
var map = {classA, classB}
и затем просто использовать
let newClass = new map['classA'] ('{"width":"0","height":"0"}');
class classA {
constructor(parametrs) {
this.parametrs = JSON.parse(parametrs);
}
};
class classB {
constructor(parametrs) {
this.parametrs = JSON.parse(parametrs);
}
};
var map = {
classA,
classB
}
console.log(new map['classA']('{"width":"0","height":"0"}') instanceof classA);
console.log(new map['classB']('{"width":"0","height":"0"}') instanceof classB);
Продвижение своими сайтами как стратегия роста и независимости