已經全面支援主流浏覽器啦!
對于前端開發者,相容各種浏覽器是一件非常痛苦的事情。在搜尋框中輸入關鍵字JavaScript浏覽器相容,結果是這樣的:
有浏覽器的地方就有Fundebug
是前端JavaScript錯誤實時監測平台,經過大量相容性調試,Fundebug的JavaScript監測插件已經能夠在各種主流浏覽器中自動捕獲錯誤,并且可以擷取最全面的錯誤資訊,幫助開發者更快的Debug。而對于近來不怎麼受待見的IE浏覽器,我們也進行了全面支援,從IE 6到IE 11。

為什麼要相容各種浏覽器?
根據
百度統計的最新資料,2016年10月份到12月份國内的浏覽器份額如圖所示:
可知,使用者偏好千差萬别,而各版本的IE的市場佔有率總計為26%,僅次于Chrome。我還有什麼話可說呢?國内主流浏覽器都采用雙核心機制,即相容模式和極速模式,而所謂相容模式,使用的是triend核心,即IE核心。
作為一個自帶價值觀的産品,Fundebug希望通過相容各種浏覽器幫助開發者提升使用者體驗。
相容浏覽器坑在哪裡?
- Error對象 的屬性各有不同,例如大名鼎鼎的Chrome的Error對象木有fileName,lineNumber以及columnNumber屬性;
- Onerror事件 的參數各有不同,例如老版本的Firefox木有columnNumber 和error參數
- API不同,例如老版本的IE木有 JSON對象 ;
- 同一個屬性名在不同浏覽器的含義不同;
- 同一個屬性在不同浏覽器的名稱不同;
- 國内浏覽器的IE相容模式與真正的IE也略有不同;
- ......
這些問題大概前端工程師都會深有同感吧。
錯誤智能聚合
同樣的代碼産生的同一個錯誤,在不同浏覽器上的報錯資訊是各不相同的。name不同的錯誤可能是同一個錯誤,例如SyntaxError與ReferenceError;message不同的錯誤可能是同一個錯誤,例如can not find variable fundebug與fundebug is not defined。并且,同一個錯誤在不同浏覽器下的lineNumber,columnNumber,stack,與url都有可能不同。
對于這個問題,我們對收集的錯誤利用機器學習算法進行了智能聚合,盡量将同一個錯誤聚合到一起,減少重複報警。根據我們的初步估算,目前聚合算法能夠将90%的重複錯誤成功聚合,這樣極大地提高了使用者分析錯誤的效率。
還等什麼呢?感覺免費注冊
吧!
版權聲明:
轉載時請注明作者
以及本文位址:
https://blog.fundebug.com/2017/01/16/fundebug-support-all-browsers/