我有一個構造函數,例如webapp.core.cf1或Backbone.Router。但我得到這個構造函數不作爲參考,但作爲一個字符串!我無法改變這個要求,結構。必須在字符串中。我怎樣才能從這個新的對象,例如classfun(「Backbone.Router」)?調用字符串構造函數
function classfun (cfstr)
{
...
cf = new window[cfstr]();
如果我試試這樣,我得到的錯誤:...不是一個構造函數。
爲什麼這不起作用?沒有使用eval()
的替代方法嗎?
感謝很多提前
編輯
謝謝大家對你的答案!
謝謝你,Tronix117,這是問題!
謝謝你,本傑明舒爾特,功能!
你能舉一個完整的例子嗎?也許,在http://jsfiddle.net上? – 2012-04-19 12:49:41
以及你真正想要發生什麼的示例代碼? – Joseph 2012-04-19 12:50:23
你怎麼稱呼'classfun'?你傳入什麼類型的變量? – Quentin 2012-04-19 12:51:53