2013-03-05 63 views
1

我有一個定義類名稱的字符串數組。我想用字符串名來實例化這些類。我嘗試過使用窗口,但我一直無法做到。來自數組的Javascript函數

結構是

var objects = ['string1', 'string2']; 

所以窗口看起來像

window [ 
    objects [ 
     'string1', 
     'string2'  
    ] 
] 

我曾嘗試:

new window['objects'][0]; 

但是扔字符串不是FUNC錯誤。

任何人都知道如何做到這一點?

感謝

+0

'window'是在JavaScript中的保留字,你爲什麼要使用它? – Ryan 2013-03-05 20:17:42

+0

要訪問全局範圍內的變量 – 2013-03-05 20:19:48

+2

@ryan:'window'絕對不是保留字。似乎很清楚,OP正在參考全局對象。 – 2013-03-05 20:21:18

回答

2

window.objects[0]是一個字符串。
您想獲得由該字符串命名的window屬性:

window[window.objects[0]] 
+0

這與通過字符串名稱創建對象有什麼關係? – mellamokb 2013-03-05 20:17:13

+1

他意味着你可以做新的窗口[window.objects [0]]() – Dave 2013-03-05 20:17:55

+0

...雖然新窗口[對象[0]]()更短,一樣好 – Dave 2013-03-05 20:18:32