前段时间在日志里发现了大量由 H5 上报的错误,里面清一色的错误内容是 [object Event]
。因为上报的是 message
字符串,很好奇为什么会记录了 [object Event]
这样的内容。
同时发现,出现这个内容的全是 Android 的旧版本,从 4.1 到 4.4 都有分布,于是又针对性地谷歌了下,发现了这篇 issue。
大概是说这是 Android 4.1 – 4.4 WebView 实现的一个 Bug….
大概的解决方法有两个:
typeof message === "object" && message.toString() === "[object Event]"
1、使用 for ... in
循环将 message
的内容取出来进行上报
2、忽略
我们选择了忽略错误,从此日志里再也没出息过这个错误了- -。
参考:
https://stackoverflow.com/questions/22806305/window-onerror-and-object-event
https://stackoverflow.com/questions/27214534/js-object-event-error-on-android-in-getsentry