Catch无法读取null的属性
Catch Cannot read property of null
在我的应用程序中,我有一个这样的代码:
"docDecesPere": $scope.orphanFatherDocumentUpload == null ?
(
res.candidatureSituationSociale != "undefined" ?
res.candidatureSituationSociale.docDecesPere :
null
) :
$scope.orphanFatherDocumentUpload.name
在某些情况下,res.candidatureSituationSociale
可能是未定义的,所以正如你所看到的,我已经测试过了,所以如果它没有定义,我会影响res.candidatureSituationSociale.docDecesPere
到"docDecesPere"
,但我总是收到这个错误:
Cannot read property 'docDecesPere' of null
那么,为什么我在做了测试的情况下仍然会遇到这个问题,我该如何解决呢?
您将它们封装在"
中,因此需要使用typeof
:
typeof res.candidatureSituationSociale != "undefined"
为了安全起见,还应添加null
。
typeof res.candidatureSituationSociale != "undefined" &&
res.candidatureSituationSociale != null
如果您将变量检查为"undefined"
,这是一个字符串,则必须使用typeof(var)
。
在JS中,您可以通过执行来轻松检查变量是null
还是undefined
undefined || null ? 'true' : 'false'
你可能想试试这样的代码,
"docDecesPere": !$scope.orphanFatherDocumentUpload ?
(
res.candidatureSituationSociale ?
res.candidatureSituationSociale.docDecesPere :
null
) :
$scope.orphanFatherDocumentUpload.name
在这种情况下,您必须确保res.candidatureSituationSociale.docDecesPere
不为null。
测试变量为null或未定义的更好方法是测试它是否不等于null
或undefined
res.candidatureSituationSociale != null
对于除null
和undefined
之外的所有res.candidatureSituationSociale
值均为true
相关文章:
- 无法获取属性'selectedIndex'的未定义引用或null引用
- delete在Object上效率低下,但在DOM Element's的数据属性,与null out相比
- 未捕获的类型错误:无法读取属性'addEventListener'的null chrome扩展名
- 未捕获的类型错误:无法读取属性'状态'在react中为null
- Javascript Float32数组抛出无法读取属性'0'即使数组定义良好,也为null
- 未捕获的类型错误:无法设置属性'innerHTML'如果为null,则将脚本移动到正文不会;不起作用
- 我该如何解决这个问题?“未捕获的类型错误:无法读取 null 的属性'appendChild'”
- 无法设置属性'innerHTML'在javascript中为null
- 如何计算一个对象中五个属性中有多少是非null的
- Microsoft JScript运行时错误:无法获取属性'的值;样式':对象为null或未定义
- VM5111:1249未捕获类型错误:无法读取属性'x'为null
- 节点的ownerDocument属性为null
- 无法获取属性'字符串'的未定义或null引用IE 11 ASP.NET
- 无法读取属性'addEventListener'菜单上为null的
- Catch无法读取null的属性
- select2:无法读取null的属性查询
- 获得'无法读取null的属性样式'
- JavaScript表单属性null错误
- 未捕获的类型错误:不能读取属性'null - error在Chrome
- 无法读取属性'null"javascript错误