當我打開Chrome(v35)DevTools並檢查一個對象時,控制檯可以顯示嵌套在函數中的東西,包括標記爲「功能範圍」的東西。使用Chrome DevTools控制檯以編程方式訪問功能範圍
例如,在看stackoverflow.com時,我可以看到有一個全局的$
對象包含另一個名爲Callbacks
的函數。 Callbacks
,與$
一樣,具有包含Closure
和Global
的功能範圍。
- 問題1:什麼是包含在其功能範圍內封閉函數內直接嵌套一些命名的對象和一些對象之間的區別?
- 問題2:如何以編程方式引用控制檯中的函數作用域?
window.$.Callbacks.???
?chrome.function???(window.$.Callbacks)
我問的原因是因爲我正在尋找內存泄漏,並希望根據對象類型和屬性名稱搜索函數閉包中的對象。
是否將斷點設置爲選項? – 2014-09-04 18:32:45
http://stackoverflow.com/questions/11969062/tool-to-track-down-javascript-memory-leak/12061206#12061206 – loislo 2014-09-05 03:33:23
設置斷點和使用堆快照都要求我與DevTools GUI進行交互。我正在尋找以編程方式搜索DevTools中顯示的信息。對於我正在處理的應用程序,我想要手動篩選堆增量或通過堆棧進行點擊和展開的對象太多了。 – bdkosher 2014-09-05 12:06:07