尋找渲染頁面源代碼中實際行號的位置的行業標準或專業流程是什麼?發生JavaScript錯誤時找到實際的源文件行號?
我已經使用了瀏覽器調試工具,它當然會顯示錯誤信息,但行號與正在提供的源代碼文件不同。我知道通常服務器端腳本正在使文件比實際時間長等。
我通常只是爲錯誤附近的函數或代碼尋找並最終能夠找到它,但有沒有更好的方法?
尋找渲染頁面源代碼中實際行號的位置的行業標準或專業流程是什麼?發生JavaScript錯誤時找到實際的源文件行號?
我已經使用了瀏覽器調試工具,它當然會顯示錯誤信息,但行號與正在提供的源代碼文件不同。我知道通常服務器端腳本正在使文件比實際時間長等。
我通常只是爲錯誤附近的函數或代碼尋找並最終能夠找到它,但有沒有更好的方法?
最簡單的方法是確保您的大部分JS都是在非模板化的.js文件中編寫的,而不是在模板化的html中內嵌<腳本>塊。
當我讀到這些時,我對自己說「杜」。這對我來說最有意義,而且我可以理解這一點。我仍然在學習很多關於開發人員工具的知識,但它已經節省了很多。我被包括我自己在內的人多久不使用它們並且迷路了。 – 2014-10-10 20:52:26
我使用Visual Studio.net 2013進行開發,它將停止在斷點處並解決服務器端和客戶端錯誤。 如果您沒有使用像VisualStudio這樣的具有內置調試器和斷點等工具進行開發,Chrome和IE中的內置開發人員工具非常棒(恕我直言)。由於Javascript在客戶端運行,因此您需要使用瀏覽器進行調試。如果你不喜歡內置的開發工具,你也可以試試Fiddler和Firebug。
如果服務器在提供腳本之前正在修改腳本,請查看生成瀏覽器可以理解的[源映射](http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/)。這應該讓你翻譯行號。 – Douglas 2014-10-10 20:22:13
當在Chrome中生成控制檯錯誤時,控制檯窗口的右側(輸出每行一個)有一個鏈接,它顯示生成錯誤的文件和行號。這些行號值對您的案例並不是很有幫助 - 但您可以點擊鏈接並獲取DevTools中的腳本代碼。我發現這種行爲非常有幫助。 – 2014-10-10 20:26:35