2010-07-21 49 views
0

我知道可以調用調用函數,但可以調用調用該函數的函數。好的...聽起來有點混亂。讓我來演示一下:arguments.callee問題

pop.share(msg, function(response) { 
    if(response) response = true; 
    else response = false; 
}); 

基本上彈出一個盒子要求用戶分享。如果響應是錯誤的,我想調用pop.share ...因此顯示彈出窗口模式迫使它們共享。好的,這可能不是一個好的邏輯或實踐活動網站。

我只是躺在牀上,我有一個雖然「真的可以做」。我試圖用一些測試代碼嘗試並且無法弄清楚。

編輯:如果它是一種模式,它不會工作,因爲它不會等待用戶響應,從而創建一個無限循環。

回答

1

嘗試過時arguments.caller?但由於它已經過時,所以對現場沒有用處。

https://developer.mozilla.org/En/Core_JavaScript_1.5_Reference/Functions_and_function_scope/arguments/caller

+0

'callee'是太陳舊作爲ECMAScript的5 – casablanca 2010-07-22 00:19:04

+2

@casablanca:不,'arguments.callee'是不是*的ES5過時*在嚴格模式下,訪問它只會拋出一個'TypeError'異常。非嚴格代碼仍然可用。 – CMS 2010-07-22 00:31:48

+0

@CMS:哦,我的不好。 – casablanca 2010-07-22 02:13:24

0

儘量不要過時arguments.callee.caller