js 获取json数组里面数组的长度实例
网络 2017-12-04 1432
作为一个前端页面开发者第一次处理json数据,遇到了‘js 获取json数组里面数组的长度'?竟然不知道 json没有.length属性(真是要嘲讽下自己),少壮不努力老大徒伤悲啊!以前都是去寻求男朋友帮助,但是最近尝试自己去解决遇到的问题。
我遇到的问题是这样的:***.jsp结尾的页面里面,后端传给我的json数据是一个数组,然后要获取第二个数组contacts里面的数组长度,然后百度发现 json没有.length属性。怎么办呢?
既然json对象没有length属性,如果要知道他的长度怎么办呢?
1 2 3 4 | var jslength=0; for(var js2 in json){ jslength++; } |
把这段代码写成一个方法,以后调用就行了:
1 2 3 4 5 6 7 | function getJsonLength(jsonData){ var jsonLength = 0; for(var item in jsonData){ jsonLength++; } return jsonLength; } |
但是上面的方法只能获取到第一层数组的长度???获取不到子数组里面的数组长度???然后自我发挥了下,用下面方法成功获取到contacts数组的长度。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | 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); |
最后调出的结果: