2015-08-28 26 views
0

有沒有辦法找到項目中所有地方的特定函數被調用?特別是,考慮到文件被導入的任何時間。跨節點文件查找函數調用

舉例來說,如果我們要尋找的地方library.jsfunction foobar()時,在另一個文件這個例子將包括:

var library = require('./myfile.js') 
library.foobar() 

(原因簡單地在所有文件中搜索foobar不會工作是如果該功能是多個模塊中使用的通用名稱。)

這將與Webstorm的Jump to Definition功能類似。

其中一個用例是幫助重構一個遺留代碼庫,它不清楚某些導出函數在哪裏被使用,或者它們是否被使用。

我看到類似的問題,如this one,但這些似乎是爲客戶端JavaScript和不考慮出口。

回答

0

有時我在功能中使用callsite模塊我想檢查日誌文件的絕對鏈接使用這個函數。

0

您可以將 console.trace();添加到您的函數中,您將知道它在哪裏調用。

+0

感謝您的建議,但這並不完全適用於這種情況,因爲可能根本不會調用該函數。我正在尋找一個靜態分析器,而不是在運行時需要執行整個代碼庫。 – David