3
我想知道如何在運行時訪問JavaScript執行跟蹤。我看見螢火蟲可以做這樣的事情:如何在Firefox中運行時訪問JavaScript執行跟蹤?
參見上圖中,所有執行的行號以綠色突出顯示。它們在運行時實現。我想必須有某種方法可以從瀏覽器使用的JavaScript引擎訪問這些信息。
現在說我想構建一個Firebug插件來訪問這些信息並檢查運行時每個已執行行中的所有變量,我該如何啓動?
我想知道如何在運行時訪問JavaScript執行跟蹤。我看見螢火蟲可以做這樣的事情:如何在Firefox中運行時訪問JavaScript執行跟蹤?
參見上圖中,所有執行的行號以綠色突出顯示。它們在運行時實現。我想必須有某種方法可以從瀏覽器使用的JavaScript引擎訪問這些信息。
現在說我想構建一個Firebug插件來訪問這些信息並檢查運行時每個已執行行中的所有變量,我該如何啓動?
顯然你問過在Firebug論壇的same question。
要複製洪扎的回答是:
螢火蟲目前正在使用JSD(jsdIDebuggerService)搞清楚, 哪一行是可執行的。不過,該計劃是切換到JSD2(工作正在進行中 )https://wiki.mozilla.org/Debugger
你也應該立足分機上JSD2
外觀爲 調試文檔中
getLineOffsets(line)
和getOffsetLine(offset)
。我沒有測試它,但我認爲如果getLineOffset 返回null,則該行不可執行。
塞巴斯蒂安
這是不是在螢火蟲的情況。它僅在其中有一些執行的行上顯示綠線(因此不包括大括號'{}')。這些行可能無法執行。它不顯示執行跟蹤。嘗試將'if(){} else {}'放入代碼中,並看到它將以綠線顯示代碼中的兩個塊 – nefarianblack 2013-03-15 07:52:08
@tanmaykhandelwal謝謝,但這不是真的。請參閱我更新的屏幕截圖。謝謝。 – Fshly 2013-03-15 08:08:32
你有哪個版本的螢火蟲。我有1.11.2,它也在'if(false){'行顯示綠線號。你是否也可以在if語句的假條件中添加可執行文件行?像這樣: 'if(false){var a ='1';} else {var b ='2';}' – nefarianblack 2013-03-19 09:12:43