2015-08-23 32 views
0

我是Javascript的初學者,我寫了一些完美的代碼,但不時產生控制檯錯誤。
這是一個硬幣翻轉模擬器,其中硬幣的類需要根據結果而改變 - 因此它搜索相反的結果類名並將其更改爲當前結果類名(使用SetAttribute)。但是,有時您會在同一行中獲得兩個相同的結果,因此搜索相反的類名將返回null,然後在嘗試setAttribute爲null時出現錯誤。
我可以寫一個If語句來避免這種情況,但我想知道是否有必要。我想學習最佳實踐,所以請,如果有理由避免控制檯錯誤,請告訴我!如果控制檯錯誤不會導致問題,Javascript控制檯錯誤可以接受嗎?

+0

你應該處理錯誤,是的。 – Xufox

+2

是的,你需要寫一個聲明來避免這種情況。這就是說。歡迎來到SO。請訪問[幫助]查看如何在此處提問 – mplungjan

+2

即使它起作用,將灰塵藏在地毯下也不會有好處。總是儘量滿足每一種可能的情況。好的代碼是處理錯誤的代碼。 – blex

回答

2

控制檯錯誤(如未處理的異常)表示代碼中存在問題。有時問題可能會變得溫和,但如果不研究代碼,就無法知道它的良性。而且,在您研究代碼以理解問題時,通常需要一兩行代碼來避免或處理代碼中的問題。

你應該添加這個額外的代碼來處理這個問題,因爲如果你讓這些良性警告建立起來,那麼很快你就不會注意到彈出的新警告實際上是一個嚴重麻煩的跡象。由於這個原因,你的代碼應該是免費的,所以當一個意外問題出現時,你可以清楚地看到它,並且你和其他工作在項目或測試項目上的人都知道這樣的警告是意外的。

因此,清理這樣的所有警告並保持代碼清潔和免費警告是一種很好的做法。


想象一下,你開着你的車,警告燈亮了。你把它帶進機械師,機械師說:「哦,這就是他們設計的方式 - 光線不時出現」。好的,現在這個警告基本上是無用的,因爲你不知道什麼時候警告是一個真正的問題的標誌,當警告只是一些不完整的設計,並沒有很好地清理。這與你的代碼一樣。

+0

偉大的比喻,是有道理的。謝謝你的幫助。 –