Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
忽略php中的javascript错误_Javascript_Jquery_Error Handling - Fatal编程技术网

忽略php中的javascript错误

忽略php中的javascript错误,javascript,jquery,error-handling,Javascript,Jquery,Error Handling,我正在用jQuery将一些JSON解析到数组中。 因此,我在一个地方指定: $("#address_text").text(data['account']['address']['text']); 问题是,有时候我在JSON中没有这样的内容,我会出现错误: TypeError: null is not an object (evaluating 'data['account']['address']') 而脚本被阻止在该行下 我是否可以忽略错误,不为#地址#文本分配任何内容? 我在php中搜

我正在用jQuery将一些JSON解析到数组中。 因此,我在一个地方指定:

$("#address_text").text(data['account']['address']['text']);
问题是,有时候我在JSON中没有这样的内容,我会出现错误:

TypeError: null is not an object (evaluating 'data['account']['address']')
而脚本被阻止在该行下

我是否可以忽略错误,不为#地址#文本分配任何内容? 我在php中搜索类似“@”的符号。不管错误是什么,都忽略它。

这个怎么样

  if(data && data.account && data.account.address && data.account.address.text){
    $("#address_text").text(data['account']['address']['text']);
    }else{
     $("#address_text").text("data is not valid");
    }
这个怎么样

  if(data && data.account && data.account.address && data.account.address.text){
    $("#address_text").text(data['account']['address']['text']);
    }else{
     $("#address_text").text("data is not valid");
    }

第一:如果您有错误,请修复错误,而不是忽略它

第二:在获取属性之前检查值是否存在

if(数据和数据['account']&&data['account']['address']&&data['account']['address']['text']){
....
}

首先:如果有错误,请修复错误,而不是忽略它

第二:在获取属性之前检查值是否存在

if(数据和数据['account']&&data['account']['address']&&data['account']['address']['text']){
....
}

我总是反对忽略错误。如果您不确定输入的内容,最好检查输入。一个简单的
if
-语句就足够了。或者使用
try catch
-构造。我尝试了
数据['account']['address']['text']?数据['account']['address']['text']:“”
,但没有成功:(Javascript不存在错误。基本上不可能忽略特别重要的错误,比如要解析的空值function@HereticMonkey很好的例子,我尝试了最后一个
data.account?.address?.text?
,但它不起作用(还没有?)什么浏览器?但是,IE永远不会得到它。此外,如果
数据
为空/未定义,您可能需要使用
数据?.account?.address?.text
。我总是反对忽略错误。如果您不确定输入的内容,最好检查输入。一个简单的
if
-语句就足够了。或者使用
try catch
-构造。我尝试了
data['account']['address']['text']?data['account']['address']['text']:“”
但没有成功:(Javascript不存在错误。基本上不可能忽略特别重要的错误,比如要解析的空值function@HereticMonkey很好的例子,我尝试了最后一个
data.account?.address?.text?
,但它不起作用(还没有?)什么浏览器?但是,IE永远不会得到它。另外,如果
数据
为空/未定义,您可能需要使用
数据?.account?.address?.text
。@Zaid abu khalaf我没有调用此错误。对我来说,它只是缺少信息。API不在我的控制之下。我只做了处理脚本。@Zaid abu khalaf我没有调用此错误。对于m它只是缺少信息。API不在我的控制之下。我只做了处理脚本。