JSON正常就是由对象和数组组成,对象使用对象的方法来进行操作。数组使用数组的方法来进行操作。
var ourcountry=[["北京市"],["上海市"],["合肥市","芜湖市","蚌埠市"]];
alert(ourcountry[2][1]);
JSON对象
var status_process = {
"name5" : '闲置期',
"name1" : '播种期',
"name2" : '苗期',
"name3" : '生长期',
"name4" : '采收期'
alert(status_process["name5"]);
alert(status_process.name5);
JSON字符串
所谓json字符串,是指该字符串变量的值与json的格式相同,但是不是json对象,比如:
var s1="{";
var s2 = " 'name5' : '闲置期', 'name1' : '播种期','name2' : '苗期','name3' : '生长期','name4' : '采收期'";
var s3="}";
var status_process=s1+s2+s3;
JSON数组遍历
packJson = [
{"name":"zhang", "password":"123"},
{"name":"li", "password":"456"}
for(var p in packJson){
alert(packJson[p].name + " " + packJson[p].password);
for(var i = 0; i < packJson.length; i++){
alert(packJson[i].name + " " + packJson[i].password);
JSON数组的操作
delete jsonArry[0];
splice(index,length):
4.循环访问数组
a.jquery
$.each(jsonArry,function(index,item){
var userId=item.userId;
});
b.一般方式
for(var i=0;i<jsonArry.length;i++)
var userId=jsonArry[i].userId;
c.特殊方法
for(var item in jsonArry)
var userId=jsonArry[item].userId;
JSON对象遍历
myJson = {"name":"ji", "password":"123"};
for(var p in myJson){
alert(p + " " + myJson[p]);
字符串和json对象和json对象数组相互转换
var jsonStr = "{\"userId\":\"001\"}";
var jsonArryStr = "[{\"userId\":\"001\"},{\"userId\":\"002\"}]";
var jsonObj = JSON.parse(jsonStr);
var jsonArry = JSON.parse(jsonArryStr);
var jsonStr = JSON.stringify(jsonObj);
var jsonArryStr=JSON.stringify(jsonArry);
alert(jsonStr);
alert(jsonArryStr);
alert(jsonObj.userId);
alert(jsonArry[0]['userId']);
tips:
只有数组或者json数组才可以使用length方法。json对象使用length方法无效。
如果json对象的子元素是数组或者json数组,也可以使用length方法。可以用于遍历数据。
本文转自TBHacker博客园博客,原文链接:http://www.cnblogs.com/jiqing9006/p/5985371.html,如需转载请自行联系原作者
Spring Boot + Filter 实现 Gzip 压缩超大 json 对象,传输耗时大大减少
Spring Boot + Filter 实现 Gzip 压缩超大 json 对象,传输耗时大大减少