Javascript ES6使用反射创建新实例

Javascript ES6使用反射创建新实例,javascript,reflection,ecmascript-6,Javascript,Reflection,Ecmascript 6,我有一个用例,需要在cookie中持久化给定类的名称,以便在客户端返回时创建它的实例。我希望能够做到以下几点: class MyClass { } var a1 = new MyClass() var className = a.class.name()//like in Java.. var a2 = Class.forName(className).newInstance(); 这在ES6中可能吗?具体地说,我正在寻找某种方法以字符串形式获取类的名称,您应该能够通过调用a1.constr

我有一个用例,需要在cookie中持久化给定类的名称,以便在客户端返回时创建它的实例。我希望能够做到以下几点:

class MyClass {
}

var a1 = new MyClass()
var className = a.class.name()//like in Java..
var a2 = Class.forName(className).newInstance();

这在ES6中可能吗?具体地说,我正在寻找某种方法以字符串形式获取类的名称,

您应该能够通过调用
a1.constructor.name

由于类对于函数来说是非常奇特的语法,如果类存在于窗口对象上,那么您可能会执行类似于
var a2=new window[className]()的操作但这实际上取决于您工作的范围