2015-05-19 60 views
0

是否有可能在JS ES6创建类与不同的名称?像:可能用动态名称创建新的类?

'use strict' 
    class SomeClass { 
     someMethod(){ 
     } 
    } 
    ... 
    var sClassName = "SomeClass"; 
    var variableClass = new Class(sClassName)(); 
    variableClass.someMethod(); 
+0

什么是你想完成?你为什么要这个? – andybeli

+0

我们的软件尝试使用V8作为内置引擎。这与网站开发无关。而且这种模式对于我们的任务来说非常方便 – Buzzzzer

回答

0

有可能与eval

'use strict' 
class SomeClass { 
    someMethod(){ 
    } 
} 
... 
var sClassName = "SomeClass"; 
var variableClass = eval("new " + sClassName+ "()"); 

variableClass.someMethod(); 

如果你希望避免eval,你也许能够使用的东西是这样的:

var classByCase = { 
    caseA: SomeClass, 
    caseB: SomeOtherClass 
}; 
var currentCase = 'caseA'; 
var variableClass = new classByCase[currentCase](); 
+0

Eval对于我们的任务来说是完美的。这需要一些具体的东西。谢谢! – Buzzzzer