2013-03-19 27 views
1

我想讓JS檢查一個函數是否存在,如果存在,那麼它重命名字符串,然後根據該字符串創建函數。我有我可以弄清楚如何創建一個基於字符串的函數名的第一部分:Javascript:檢查函數是否存在,如果是,則重命名並從字符串創建函數

var myMicro = 'getMicro'; 

if (typeof window[myMicro] === "function") { 
    myMicro = 'getMicro2'; 
} else { 
    myMicro = 'getMicro'; 
} 

function window[myMicro] (obj, place, func, params, finishFUNC) { 

} 

第一部分作品,但創建這個字符串的功能似乎並沒有後記工作。

回答

3

你或許可以這樣做:

window[myMicro] = function (obj, place, func, params, finishFUNC) { 

} 
+0

謝謝,這是小事情在生活中惹你了,看來我是查看代碼太長,忽略了最明顯的答案。 – jfreak53 2013-03-19 17:12:05

1

這是好事不會覆蓋全局變量還有:

var myMicro = "getMicro" in window ? "getMicro2" : "getMicro"; 
window[myMicro] = function(obj, place, func, params, finishFUNC) { 
    // ... 
}; 
相關問題