javascript运行时动态生成类

运行时动态生成类

我们都知道javascript是一个动态脚本语言,那能否在运行时动态创建类(方法呢),当然是可以的,如下操作:

const name = "name"; // 类名,可以从配置文件/后端获取

const classMap: Record<string, any> = {
    
    };

// 基类,非必须
class Base {
    
    
  constructor() {
    
    
    console.log("test");
  }
}

new Base();

// 动态创建类
const myClass = eval(`(() => (class ${
      
      name} extends Base {}))()`);

// 保存动态创建的类
classMap[name] = myClass;

console.log(classMap);

// 生成实例
new (classMap[name])();

猜你喜欢

转载自blog.csdn.net/qq_41575208/article/details/128716131