JS6,瀏覽器如何通過字符串名稱創建類的實例?我也嘗試爲這些目的使用`window`。
如何通過字符串名稱創建類的實例?例如,我有一個字符串Foo
,我需要創建一個Foo
類的實例。我不想寫這樣的結構:
let className = getClassName(); // returns 'Foo', `Stuff` or other
...
let item = null;
if(`Foo` == className){
item = new Foo();
}
else if(`Stuff` == className){
item = new Stuff();
}
UPD
我試着打通window
對象訪問我的類的構造函數,但我有問題:它返回undefined
。但我的類存在和瀏覽器知道這一點:
它是瀏覽器的JavaScript,或nodejs? – Val
如果它在瀏覽器上下文中運行,試試'new window ['className']()'。 – Phylogenesis
這是瀏覽器javascript –