如何创建动态构造函数名称

我有一些要扩展的类,我希望新类的父类名称带有前缀。我想在单个功能的单个位置执行此操作。

伪代码:

function getChildClass(parentConstructor) {
    return class `ChildOf${parentConstructor.name}` {
        constructor() { /*some common logic*/ }
    }
}

但是,这是语法错误。

这纯粹是出于美学原因。我只希望这些名称反映它们在调试期间显示时扩展的父类。

评论
  • Oo熊猫
    Oo熊猫 回复
    let libs = {}
    function init(constructorName) {
    	libs[constructorName] = function () { return this}
    	return libs
    }
    init('canvasInstruction')
    new libs.canvasInstrucion()

    您必须定义该功能是什么以及它的作用。但是,只要它返回一个类或返回此值的函数,就可以具有灵活的构造函数。