我正在检查是否(响应[0]。title !== undefined),但我得到的错误:

无法读取未定义的属性“title”。


当前回答

您必须首先检查响应[0]是否未定义,如果不是,则检查其余的响应。这意味着在您的情况下,响应[0]是未定义的。

其他回答

检查条件== null; 这将解决问题

typeof:

var foo;
if (typeof foo == "undefined"){
  //do stuff
}

我知道我迟到了7个月,但我发现了这个问题,它看起来很有趣。我在浏览器控制台上尝试了这个方法。

try{x,true}catch(e){false}

如果变量x未定义,则捕获错误并返回false,否则返回true。因此,可以使用eval函数将值设置为变量

var isxdefined = eval('try{x,true}catch(e){false}')

您必须首先检查响应[0]是否未定义,如果不是,则检查其余的响应。这意味着在您的情况下,响应[0]是未定义的。

响应[0]没有定义,检查是否定义了它,然后检查它的属性标题。

if(typeof response[0] !== 'undefined' && typeof response[0].title !== 'undefined'){
    //Do something
}