javascript中的变量类名

时间:2010-01-28 14:02:46

标签: class variables javascript

有没有办法在javascript中创建变量classname。在php中允许下一个:

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

汤姆

3 个答案:

答案 0 :(得分:5)

使用square bracket notation

some_object["string_containing_method_name"]();

如果您想使用全局变量,那么请记住它们都是window对象的所有属性。

...但是don't play with globals

你的具体例子:

var $classname = "klasse";
var $class = new window[$classname]();

(显然,在机器生成的代码中仅使用$的通常惯例也应该适用)

答案 1 :(得分:0)

请记住“eval is evil”,但如果你知道这一点,那么:

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

答案 2 :(得分:0)

如果你想打电话给

new acme.tools.Hammer();

然后做

var $toolName = "Hammer";
var myObject = new window['acme']['tools'][$toolName]();