2010-09-13 104 views
2

我有一個函數,說f(args),這是從我的代碼中的許多地方被調用。如何識別Javascript中函數的調用者?

args未定義時f()引發異常。

我想用undefined參數來識別誰叫f()

找到名爲f()的確切行(文件名+行號)的最簡單方法是什麼?

是否有可能在Firebug中看到調用者?

+4

可能重複[Javascript如何找到調用者函數?](http://stackoverflow.com/questions/280389/javascript-how-do-you-找到呼叫者功能) – 2010-09-13 14:53:27

+3

不,不是重複的。 OP特別提到了Firebug,所以這是關於執行環境的,而不是Javascript語言。 – 2010-09-13 18:55:55

回答

6

是的。 當你斷點它。 在stackwatchbreakpoints

+1

非常感謝! – 2010-09-13 15:03:33

0

如果您在IE中設置開發工具欄斷點之間,當命中斷點時,你可以看到從日腳本標籤調用棧,然後在右側選擇調用堆棧標籤。你可以在調用堆棧的每一個階段點擊瀏覽和檢查所有的來電等

1

如果需要此信息,而無需任何工具,有一段代碼:

Check out this question

而且,

HERE是寫回溯的一個例子。你可以用它來獲得整個軌跡。 (例如,如果你需要呼叫者的來電者)