我在javascript中看到这个错误,我正在调试。在JS控制台中,Chrome表示与
非常相似的内容TypeError
arguments: Array[2]
message: "-"
stack: "-"
type: "non_object_property_load"
__proto__: Error
我通常可以解决潜在的问题,但一般来说错误代表什么?
有没有办法让堆栈跟踪到导致问题的那一行?
答案 0 :(得分:21)
您尝试访问null
或undefined
。
例如,此代码会抛出这样的错误:
null.foo;
您应该检查您从哪些对象访问哪些属性,并使用obj && obj.prop
而不仅仅是obj.prop
。
您可以使用以下方式获取堆栈跟踪:
console.log(new Error().stack);
-
表示该属性是一个getter,并且不会自动显示,因为getter可能有副作用。虽然堆栈可用(-
不意味着“不可用”);你只需要明确地访问它。