NodeJS - Javascript从String创建对象实例

Mis*_*e83 6 javascript node.js

在我的Node.Js应用程序(服务器端)中,我必须创建一个对象实例(这是一个类,所以有new MyClass()),但MyClass是一个string.

可以从String创建对象实例吗?我已经看到在浏览器方面我可以使用window,但在这里我在服务器端......

我将需要这个,因为我现在将在运行时使用该类的名称,因此我无法在"代码"中实例化此对象.

而且,我可以有几个需要以这种方式创建的类.简而言之,我有一个显式这种类的配置文件,我需要在真正的JavaScript对象中转换这个字符串.

Que*_*Roy 10

对于nodejs,将window被"替换" global.因此,如果您的类在全局上下文中可用,则可以使用global["ClassName"]它来获取它.

但是,如果可以,您也可以考虑使用构造函数字典.它通常更清洁.这是一个例子.

var constructors = {
   Class1: Class1,
   Class2: Class2
};

var obj1 = new constructors["Class1"](args);
Run Code Online (Sandbox Code Playgroud)