来自字符串变量名的Javascript类[重复]
Posted
技术标签:
【中文标题】来自字符串变量名的Javascript类[重复]【英文标题】:Javascript class from string variable name [duplicate] 【发布时间】:2021-08-26 10:26:19 【问题描述】:我有一个类名,想用它来动态创建一个类实例。我该怎么做?
class FieldText
constructor()
console.log('hello text field');
class FieldTextarea
constructor()
console.log('hello textarea field');
function callField(name)
new FieldText(); // Somehow use name variable instead to make it dynamic
// new Field$name(); // Does not work
callField('text');
【问题讨论】:
将类放在一个对象中并引用它?globalThis.FieldTextarea = FieldTextarea
允许 globalThis['FieldTextarea']
const elements = Text: fieldText; Textarea: FieldTextarea ;
然后你可以做new elements[name]
这有帮助吗? ***.com/a/49060784/14032355
【参考方案1】:
class FieldText
constructor()
console.log('hello text field');
class FieldTextarea
constructor()
console.log('hello textarea field');
this.FieldText = FieldText;
this.FieldTextarea = FieldTextarea;
function callField(name)
return new this[`Field$name`];
callField('Text');
【讨论】:
以上是关于来自字符串变量名的Javascript类[重复]的主要内容,如果未能解决你的问题,请参考以下文章
获取与python中的对象对应的所有可能变量名的列表[重复]