Chrome和Firefox中TypeError上的详细错误消息(在哪个引用上访问什么和访问什么)



我注意到Chrome和Firefox在访问未定义/null引用上的变量时会给出不同的错误消息。

let a = {b: {c: null}};
a.b.c.d;

Chrome中的错误消息:Uncaught TypeError: Cannot read property 'd' of null
Firefox中的错误信息:Uncaught TypeError: a.b.c is null

因此,Firefox会告诉我引用的表达式为null,但不会告诉我试图在其上访问什么。
相反,Chrome会告诉我试图访问什么,并且使用的引用为null,而不会告诉引用的表达式。

在调试时,我会考虑这两个有价值的信息。特别是当JS代码被缩小,行号不再与开发代码匹配时。

是否可以从浏览器中获取这两种信息?

当您使用Firefox Nightly和Firefox Developer Edition时,您会收到以下错误消息:

未捕获类型错误:无法访问属性"d";,a.b.c为空

这只发生在这些版本的Firefox中,因为试图更改错误消息会破坏网站。Bug 1259822

相关内容

  • 没有找到相关文章

最新更新