js 获取json数组里面数组的长度


作为一个前端页面开发者第一次处理json数据,遇到了‘js 获取json数组里面数组的长度’?竟然不知道 json没有.length属性(真是要嘲讽下自己),少壮不努力老大徒伤悲啊!以前都是去寻求男朋友帮助,但是最近尝试自己去解决遇到的问题。

我遇到的问题是这样的:***.jsp结尾的页面里面,后端传给我的json数据是一个数组,然后要获取第二个数组contacts里面的数组长度,然后百度发现 json没有.length属性。怎么办呢?

 

   

 

 

 

  既然json对象没有length属性,如果要知道他的长度怎么办呢

 var jslength=0;
 for(var js2 in json){
   jslength++;
 }    

        把这段代码写成一个方法,以后调用就行了:

function getJsonLength(jsonData){
    var jsonLength = 0;
    for(var item in jsonData){
       jsonLength++;
    }
    return jsonLength;
}    

  但是上面的方法只能获取到第一层数组的长度???获取不到子数组里面的数组长度???然后自我发挥了下,用下面方法成功获取到contacts数组的长度。

var _data =  ${contactJson};
function getJsonLength(jsonData){
  var jsonLength = 0;
  for(var item in jsonData){
    if(item == 'contacts'){
      for(var x in jsonData[item]){
        jsonLength++;
      }
    }
  }
        return jsonLength;
}
var _contact_num = getJsonLength(_data);
$('#contactNum').text(_contact_num);  

   最后调出的结果:


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM