如何从javascript字符串调用类

时间:2017-09-19 11:13:20

标签: javascript node.js class

我正在制作一个nodejs服务器。我已经建立了一个系统,我需要动态加载不同的类。类的名称是字符串。它看起来像这样:

var classname = "foo"; // this is the name of the class I want to call.

var bar = new classname //classname needs to be foo in this example.

我已经尝试了window[classname],但这不起作用,因为这是nodejs所以没有可以使用的窗口。

感谢您阅读:)

2 个答案:

答案 0 :(得分:2)

eval("new " + classname)但是“小心,eval is evil”等等。

答案 1 :(得分:1)

更好的方法是使用JSON对象。为此,您始终可以拥有一个key:value JSON对象,其中键对应于您的变量。请参阅下面的示例。变量classname实际上是JSON对象key的{​​{1}},然后您可以轻松地引用它来模拟,就好像您正在创建一个新类:

obj