0

我有一个使用 jQuery 的简单 ajax/json 请求:

$.ajax({
              type: "POST",
              url: "/some-json-url",
              data: "score=" + 1,
              dataType: 'json',
              success: function(data){
                if(data.msg){ 
                    alert(data.msg);
                }
             }
        });

但是,如果没有设置 msg,我会生成一个错误(通过 Opera Dragonfly 查看):

未处理的错误:无法将“数据”转换为对象

如何以有效的方式检查它是否存在?

4

1 回答 1

3

如果问题在于data为空,那么您可以像这样检查它:

if(data && data.msg){
    //...
}

或者如果您有多个属性,可以这样:

if(data){
    if(data.msg){
        //...
    }
}

或早点返回:

if(!data)
    return;

if(data.msg){
    //...
}
于 2013-10-07T15:47:15.750 回答