json定義及jquery操作json的方法
一、背景
json是一種輕量級(jí)數(shù)據(jù)交換格式,非常利于java服務(wù)與js的交互,本文將介紹json的簡(jiǎn)單定義和js如何解析json。
二、內(nèi)容
1、json定義:
簡(jiǎn)單的json格式為[{"key1":"value1"},{"key2":"value2"}],
[]代表數(shù)組,{}代表數(shù)組中的數(shù)據(jù)對(duì)象,key1,key2是一個(gè)json對(duì)象中的key,一個(gè)json中key值唯一,value1,value2,是key鍵對(duì)應(yīng)的值。
定義方式:
1)直接拼寫(xiě)json串,例:String變量,內(nèi)容為[{"attchName":"附件0","attchId":0},{"attchName":"附件1","attchId":1},{"attchName":"附件2","attchId":2}]。
2)引入json-lib.jar開(kāi)源jar包,定義JSONObject對(duì)象,例:
JSONArray jsonArray = newJSONArray();
JSONObject attchJson = newJSONObject();
attchJson.put("attchId","0");
attchJson.put("attchName", "附件0");
jsonArray.put(attchJson);
jsonArray即為一個(gè)json數(shù)據(jù),等價(jià)于用[]的定義一個(gè)json.
復(fù)雜json定義,json中key對(duì)應(yīng)的值也可以是一個(gè)json數(shù)組,如,json中封裝一個(gè)任務(wù)信息,這個(gè)任務(wù)中有若干附件定義方法如下:
JSONArray taskJsonArray = newJSONArray();
JSONObject taskJsonObj = newJSONObject();
taskJsonObj.put("taskId",100);
taskJsonObj.put("taskName", "myTask");
taskJsonObj.put("attchs",jsonArray);
taskJsonArray.put(jsonObj);
taskJsonArray為最后想要得到的json內(nèi)容,
簡(jiǎn)單拼串后的形式如下:
[{"attchs":[{"attchName":"附件0","attchId":0},{"attchName":"附件1","attchId":1},{"attchName":"附件2","attchId":2}],"taskId":100,"taskName":"myTask"}]
2、js解析json
json的一般解析方式:
var json = eval_r(jsonArray );
for(var i=0;i<json.length;i++){
alert("attchId:"+json[i].attchId+",attchName:"+json[i].attchName);
}
使用jquery解析json:
$.getJSON("jsonTest",{showNumber:"3"},function(data){
$.each(data,function(idx,item){
//alert(idx);
if(idx<0){
returntrue;//同countinue,返回false同break
}
alert("attchId:"+item.attchId+",taskName:"+item.attchName);
});
});
三、總結(jié)
json格式簡(jiǎn)單,便于解析和生成,而且是一個(gè)輕量級(jí)數(shù)據(jù)交換格式,便于在web開(kāi)發(fā)中使用。
以上就是小編為大家?guī)?lái)的json定義及jquery操作json的方法的全部?jī)?nèi)容了,希望對(duì)大家有所幫助,多多支持腳本之家~
相關(guān)文章
jWiard 基于JQuery的強(qiáng)大的向?qū)Э丶榻B
jWiard 基于JQuery的強(qiáng)大的向?qū)Э丶榻B,需要的朋友可以參考下。2011-10-10
jQuery實(shí)現(xiàn)導(dǎo)航欄頭部菜單項(xiàng)點(diǎn)擊后變換顏色的方法
這篇文章主要介紹了jQuery實(shí)現(xiàn)導(dǎo)航欄頭部菜單項(xiàng)點(diǎn)擊后變換顏色的方法,涉及jQuery響應(yīng)鼠標(biāo)事件針對(duì)頁(yè)面元素的遍歷及屬性變換相關(guān)操作技巧,需要的朋友可以參考下2017-07-07
基于jquery & json的省市區(qū)聯(lián)動(dòng)代碼
基于jquery & json的省市區(qū)聯(lián)動(dòng)代碼,需要的朋友可以參考下2012-06-06
jquery實(shí)現(xiàn)html頁(yè)面先加載內(nèi)容過(guò)幾秒后顯示數(shù)據(jù)
這篇文章主要給大家介紹了關(guān)于jquery實(shí)現(xiàn)html頁(yè)面先加載內(nèi)容過(guò)幾秒后顯示數(shù)據(jù)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-07-07
jQuery動(dòng)態(tài)星級(jí)評(píng)分效果實(shí)現(xiàn)方法
這篇文章主要介紹了jQuery動(dòng)態(tài)星級(jí)評(píng)分效果實(shí)現(xiàn)方法,涉及jquery動(dòng)態(tài)操作頁(yè)面元素樣式的相關(guān)技巧,效果華麗大氣,是一款非常優(yōu)秀的特效源碼,需要的朋友可以參考下2015-08-08

