javascript中的变量classname

javascript中的变量classname,class,variables,javascript,Class,Variables,Javascript,是否有一种方法可以在javascript中生成变量类名。在php中,下一个选项是允许的: $classname = "klasse"; $class = new $classname(); 汤姆使用: 如果你想玩globals,请记住它们都是窗口对象的属性 ……但是 你的具体例子是: var $classname = "klasse"; var $class = new window[$classname](); (显然,仅在机器生成的代码中使用$的常规约定也应适用)请记住“”,但如果您知道

是否有一种方法可以在javascript中生成变量类名。在php中,下一个选项是允许的:

$classname = "klasse";
$class = new $classname();
汤姆

使用:

如果你想玩globals,请记住它们都是
窗口
对象的属性

……但是

你的具体例子是:

var $classname = "klasse";
var $class = new window[$classname]();
(显然,仅在机器生成的代码中使用$的常规约定也应适用)

请记住“”,但如果您知道这一点,则:

var classname= "klasse";
eval( "var obj = new " + classname + "();");

如果你想打电话给

new acme.tools.Hammer();
那就做吧

var $toolName = "Hammer";
var myObject = new window['acme']['tools'][$toolName]();
@David(一条删除评论的作者,该评论指出不应使用
eval
),这就是我添加免责声明的原因。然而,这个问题听起来更具理论性,而不是很快就能付诸实践。
var $toolName = "Hammer";
var myObject = new window['acme']['tools'][$toolName]();