NodeJS – Javascript从String创build对象实例
在我的Node.Js应用程序(服务器端),我必须创build一个对象实例(这是一个类,所以与new MyClass()
),但MyClass是一个string
。
有可能从string创build对象实例? 我已经看到,在浏览器端我可以使用window
,但在这里我在服务器端…
我将需要这个,因为我现在将在运行时的类的名称,所以我不能在“代码”中实例化此对象。
而且,我可以有几个需要用这种方式创build的类。 总之,我有一个明确的这种类的configuration文件,我需要将这个string转换成一个真正的JavaScript对象。
使用nodejs, window
被global
“replace”。 因此,如果您的类在全局上下文中可用,则可以使用global["ClassName"]
来获取它。
但是,如果可以的话,你也可以考虑使用构造函数的字典。 它通常更清洁。 这是一个例子。
var constructors = { Class1: Class1, Class2: Class2 }; var obj1 = new constructors["Class1"](args);
你的意思是
var myClass = Object.assign(new MyClass(), JSON.parse(classString));