作為一個(gè)前端頁(yè)面開(kāi)發(fā)者第一次處理json數(shù)據(jù),遇到了‘js 獲取json數(shù)組里面數(shù)組的長(zhǎng)度'?竟然不知道 json沒(méi)有.length屬性(真是要嘲諷下自己),少壯不努力老大徒傷悲啊!以前都是去尋求男朋友幫助,但是最近嘗試自己去解決遇到的問(wèn)題。
我遇到的問(wèn)題是這樣的:***.jsp結(jié)尾的頁(yè)面里面,后端傳給我的json數(shù)據(jù)是一個(gè)數(shù)組,然后要獲取第二個(gè)數(shù)組contacts里面的數(shù)組長(zhǎng)度,然后百度發(fā)現(xiàn) json沒(méi)有.length屬性。怎么辦呢?
既然json對(duì)象沒(méi)有l(wèi)ength屬性,如果要知道他的長(zhǎng)度怎么辦呢?
var jslength=0; for(var js2 in json){ jslength++; }
把這段代碼寫(xiě)成一個(gè)方法,以后調(diào)用就行了:
function getJsonLength(jsonData){ var jsonLength = 0; for(var item in jsonData){ jsonLength++; } return jsonLength; }
但是上面的方法只能獲取到第一層數(shù)組的長(zhǎng)度???獲取不到子數(shù)組里面的數(shù)組長(zhǎng)度???然后自我發(fā)揮了下,用下面方法成功獲取到contacts數(shù)組的長(zhǎng)度。
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);
最后調(diào)出的結(jié)果:
以上這篇js 獲取json數(shù)組里面數(shù)組的長(zhǎng)度實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
Copyright ? 2019- 91gzw.com 版權(quán)所有 湘ICP備2023023988號(hào)-2
違法及侵權(quán)請(qǐng)聯(lián)系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市萬(wàn)商天勤律師事務(wù)所王興未律師提供法律服務(wù)