繁体   English   中英

Javascript object 检查属性是否存在

[英]Javascript object check if property exists

我有一个名为file的 javascript object ,我正在尝试检查此 object 是否包含 file.xhr.response 属性。 我试过这样..

if (file.xhr.response) {
    console.log(Exists);
} else {
    console.log(Missing);
}

这在file.xhr.response存在时有效,但如果不存在,则会引发错误...

Uncaught TypeError: Cannot read property 'response' of undefined

我哪里错了?

您可以使用以下方法检查对象属性是否存在:

if (file && file.xhr && file.xhr.response) {
    // your logic...
}

代码示例:

 var a = { b: { d: 'd' } }; var resultC = a && ab && abc ? 'Exists' : 'Missing'; console.log('abc', resultC); var resultD = a && ab && abd ? 'Exists' : 'Missing'; console.log('abd', resultD); 

使用try / catch语句,如果引发了错误,则可以在catch块中处理它。

您可以使用类似if(typeof file.xhr!="undefined")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM