无法检查空的JSON密钥:值对

时间:2017-01-25 16:24:26

标签: javascript json

我已尝试在网站上发布的几个答案,如:

How to check if JSON return is empty with jquery

没有人为我工作。

 xhr.onload = function(){
              detalles = xhr.responseText;
              console.log("log : "+detalles);
   ....
   }

控制台输出:

log : [0]

Firefox调试器网络选项卡显示JSON 0:0

非常感谢您提供的任何帮助。

编辑 - 添加更多代码以扩展上下文

xhr.onload = function(){
                  detalles = xhr.responseText;
                  console.log(detalles);

                    if((!$.trim(detalles))||($.isEmptyObject(detalles))||(!detalles[0])){
                        console.log("ok");
                        $("#graficohist").html("No info available");
                        triggerLoader();
                    }

2 个答案:

答案 0 :(得分:2)

你可以简单地让一个函数在对象中测试为空

var myObj = {"key" : "value"};
checkEmptyJson = function(myObj){
var count = 0;
for(var key in myObj){
count++;
break;
}
 if(count == 0){
  return false; // object is empty
 }else{
  return true; // object is not empty
 }
}
var result = checkEmptyJson(myObj);
console.log(result);

在您的上下文中,我们可以将其用作

hasDetallesData =  checkEmptyJson(detalles); // true if Detalles has data

答案 1 :(得分:1)

我建议您尝试this

var obj = JSON.parse(text);

将您的json转换为javascript对象,然后您可以使用

进行打印
console.log(obj)

查看obj

中的内容