如何处理未定义属性的未定义属性 javascript 类型错误
How one can handle the undefined property of undefined property javascript type error?
考虑一个假设的例子:
var r = function (o) {
try { o.a.b }
catch (e){}
};
var o={};
r(o.a.b);
console.log('aaaa');
//TypeError: o.a is undefined
有没有办法处理这种错误并显示"aaaa"?或者这就是所谓的"未捕获的类型错误",似乎总是导致失败?
Ty的链接,但这与上面提到的问题实际上不是同一个问题。我有自己的方法来测试嵌套对象,我的问题更多的是关于如何在 javascript 中处理执行过程之外的类型错误,而不会干扰这个,即返回 false,仅此而已。正如 Pointy ''o/所指出的那样,这真的是不可能的,这就是我猜的答案。
您可以使用:
if(o.a) {
r(o.a.b);
} else {
//handle error
}
console.log('aaaa');
以检查属性是否存在。如果您需要检查o.a.b
是否存在,只需扩展 if:
if(o.a && o.a.b) {
r(o.a.b);
} else {
//handle error
}
console.log('aaaa');
这些if
正在检查是否存在,但也会标记错误值 - 因此,如果o.a
或o.a.b
为假,则检查将失败
相关文章:
- 将对象作为参数传递后的未定义属性
- 检查链接对象形式中未定义属性的最佳实践是什么
- PhantomJS中的evalute内部未定义属性
- 访问数字类型的未定义属性
- 如何处理未定义属性的未定义属性 javascript 类型错误
- 返回未定义属性的脚本
- 类型错误:无法读取 ng-repeat 的未定义属性
- JavaScript-Disqus如何处理其“;disqus_config”;包含未定义属性的函数
- 是对HTMLElement#样式的未定义属性的赋值的返回值,保证与赋值相同
- 最好检查未定义属性或设置为空
- 如何解决这个未定义属性的node.js错误?
- 如何在JavaScript中挽救对象的未定义属性?
- AngularJS和PHP -注意:未定义属性:stdClass
- 主干模型删除未定义属性
- if else子句中未定义对象的未定义属性
- Javascript数组问题:无法读取未定义属性
- 当尝试使用未定义属性进行筛选时,Lodash将排除项
- 在Javascript数组的中途未定义属性
- Knockout arrayForEach未定义属性
- javascript中未定义属性的简写,初始化和赋值属性