Rai*_*nds 221 javascript undefined
我正在检查if(response[0].title !== undefined),但是我得到了错误:
未捕获的TypeError:无法读取未定义的属性"title".
amo*_*era 343
response[0] 未定义,检查是否已定义,然后检查其属性标题.
if(typeof response[0] !== 'undefined' && typeof response[0].title !== 'undefined'){
//Do something
}
Run Code Online (Sandbox Code Playgroud)
Rio*_*ams 37
只需检查是否response[0]未定义:
if(response[0] !== undefined) { ... }
Run Code Online (Sandbox Code Playgroud)
如果您仍需要明确检查标题,请在初步检查后执行此操作:
if(response[0] !== undefined && response[0].title !== undefined){ ... }
Run Code Online (Sandbox Code Playgroud)
Kar*_*lin 34
我上面的所有其他代码示例都遇到了问题.在Chrome中,这是对我有用的条件:
typeof possiblyUndefinedVariable !== "undefined"
Run Code Online (Sandbox Code Playgroud)
我将不得不在其他浏览器中测试它,看看我认为情况如何.
小智 12
实际上你必须用Try/Catch块包围它,这样你的代码就不会停止工作了.像这样:
try{
if(typeof response[0].title !== 'undefined') {
doSomething();
}
}catch(e){
console.log('responde[0].title is undefined');
}
Run Code Online (Sandbox Code Playgroud)
小智 8
类型:
var foo;
if (typeof foo == "undefined"){
//do stuff
}
Run Code Online (Sandbox Code Playgroud)