判断json数据中是否含有某个字段

时间:2021-03-28 15:09:51

在做手机端app的时候,需要用ajax技术给后端人员传输json,或者解析后端人员的json数据;通常会碰到这么个情况,就是想知道这个json中有没有我需要的字段。然后根据这个做下一步的操作,比如讲json数据展示到html页面上;

1.通常此时会想到用判断json串的长度的方法,如果其长度小于1,则代表其没有这个字段。但这中有个问题,那就是在pc端浏览器测试时会出现js报错提示;

  function getJsonLength(json) {
    var Length = 0;
    for (var item in json) {
        Length++;
    }
    return Length;
  }
 var jsonLen= getJsonLength(data.guize);
    alert("json长度:"+jsonLen);


2.然后就想到另外一种,判断这个json中的字段是不是undefined来解决这种,实践证明这种方法是很可行的,而且代码简单:

    if (typeof data.dname != "undefined") { 
         alert("json中含有此字段");
       } else { alert("不含有此字段"); }


不知各位大神碰到这种问题时是怎么解决的,可还有其他更好的方法,请指点...