json定义及jquery操作json
Posted web小菜鸟ing
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了json定义及jquery操作json相关的知识,希望对你有一定的参考价值。
一、背景
json是一种轻量级数据交换格式,非常利于java服务与js的交互,本文将介绍json的简单定义和js如何解析json。
二、内容
1、json定义:
简单的json格式为["key1":"value1","key2":"value2"],
[]代表数组,代表数组中的数据对象,key1,key2是一个json对象中的key,一个json中key值唯一,value1,value2,是key键对应的值。
定义方式:
1)直接拼写json串,例:String变量,内容为["attchName":"附件0","attchId":0,"attchName":"附件1","attchId":1,"attchName":"附件2","attchId":2]。
2)引入json-lib.jar开源jar包,定义JSONObject对象,例:
- JSONArray jsonArray = newJSONArray();
- JSONObject attchJson = newJSONObject();
-
attchJson.put("attchId","0");
attchJson.put("attchName", "附件0"); - jsonArray.put(attchJson);
- jsonArray即为一个json数据,等价于用[]的定义一个json.
复杂json定义,json中key对应的值也可以是一个json数组,如,json中封装一个任务信息,这个任务中有若干附件定义方法如下:
- JSONArray taskJsonArray = newJSONArray();
- JSONObject taskJsonObj = newJSONObject();
-
taskJsonObj.put("taskId",100);
taskJsonObj.put("taskName", "myTask"); - taskJsonObj.put("attchs",jsonArray);
- taskJsonArray.put(jsonObj);
taskJsonArray为最后想要得到的json内容,
简单拼串后的形式如下:
["attchs":["attchName":"附件0","attchId":0,"attchName":"附件1","attchId":1,"attchName":"附件2","attchId":2],"taskId":100,"taskName":"myTask"]
2、js解析json
json的一般解析方式:
使用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);
); -
);
三、总结
json格式简单,便于解析和生成,而且是一个轻量级数据交换格式,便于在web开发中使用。
以上是关于json定义及jquery操作json的主要内容,如果未能解决你的问题,请参考以下文章
分享基于.NET动态编译&Newtonsoft.Json封装实现JSON转换器(JsonConverter)原理及JSON操作技巧