json格式数据整理
一,json的两种数据结构
1.1,对象
对象结构以”{”大括号开始,以”}”大括号结束。中间部分由0或多个以”,”分隔的”key(关键字)/value(值)”对构成,关键字和值之间以”:”分隔,语法结构如代码。
{
key1:value1,
key2:value2,
...
}
1.2,数组
其中关键字是字符串,而值可以是字符串,数值,true,false,null,对象或数组
数组结构以”[”开始,”]”结束。中间由0或多个以”,”分隔的值列表组成,语法结构如代码。
[
{
key1:value1,
key2:value2
},
{
key3:value3,
key4:value4
}
]
二,json格式的升级
2.1,一级-----key,value键值对
是一个个键值对
其中key可以带“”,也可以不带
Code: "414500",
或者这种的
"Code": "414500",
都对。
2.2,二级-----对象
{
"Code": "414500",
"Name": "二七区",
"sort": 1
}
json格式的数据在升级是一个对象,这种对象的格式就类似于这种的,注意最后一个没有,号
2.3,三级-----数组
[
{
"Code": "414500",
"Name": "二七区",
"sort": 1
},
{
"Code": "414500",
"Name": "中原区",
"sort": 2
}
]
json格式在对象的基础上会把一个个的对象放到数组当中成为一个数组
2.4,四级-----对象
{
"level": [
{
"Code": "414500",
"Name": "二七区",
"sort": 1
},
{
"Code": "414500",
"Name": "中原区",
"sort": 2
}
]
}
假如现在再把这个数据赋给一个对象,那么它现在又从数据变成对象了,level相当于key,而整个数组就是value
2.5,五级-----对象
{
"Code": "414500",
"Name": "郑州市",
"level": [
{
"Code": "414500",
"Name": "二七区",
"sort": 1
},
{
"Code": "414500",
"Name": "中原区",
"sort": 2
}
],
"sort": 1
}
,现在是往已有的对象里面添加新的数据,是对对象的补充。
2.6,六级-----数组
[
{
"Code": "414500",
"Name": "郑州市",
"level": [
{
"Code": "414500",
"Name": "二七区",
"sort": 1
},
{
"Code": "414500",
"Name": "中原区",
"sort": 2
}
],
"sort": 1
},
{
"Code": "414530",
"Name": "新乡市",
"level": [
{
"Code": "414530",
"Name": "卫滨区",
"sort": 1
},
{
"Code": "414530",
"Name": "牧野区",
"sort": 2
}
],
"sort": 2
}
]
现在在把这个对象当成数组的0号元素放到一个数据中去。
2.7,七级-----对象
{
"level": [
{
"Code": "414500",
"Name": "郑州市",
"level": [
{
"Code": "414500",
"Name": "二七区",
"sort": 1
},
{
"Code": "414500",
"Name": "中原区",
"sort": 2
}
],
"sort": 1
},
{
"Code": "414530",
"Name": "新乡市",
"level": [
{
"Code": "414530",
"Name": "卫滨区",
"sort": 1
},
{
"Code": "414530",
"Name": "牧野区",
"sort": 2
}
],
"sort": 2
}
]
}
(第三步很像)
假如现在再把这个数据赋给一个对象,那么它现在又从数据变成对象了,level相当于key,而整个数组就是value
2.8,八级-----对象
{
"Code": "410000",
"Name": "河南省",
"level": [
{
"Code": "414500",
"Name": "郑州市",
"level": [
{
"Code": "414500",
"Name": "二七区",
"sort": 1
},
{
"Code": "414500",
"Name": "中原区",
"sort": 2
}
],
"sort": 1
},
{
"Code": "414530",
"Name": "新乡市",
"level": [
{
"Code": "414530",
"Name": "卫滨区",
"sort": 1
},
{
"Code": "414530",
"Name": "牧野区",
"sort": 2
}
],
"sort": 2
}
]
}
第四步很像
2.9,九级-----数组
[
{
"Code": "940000",
"Name": "澳门特别行政区",
"level": [
{
"Code": "940000",
"Name": "澳门特别行政区",
"level": [
{
"Code": "940000",
"Name": "澳门特别行政区",
"sort": 1
}
],
"sort": 1
}
]
},
{
"Code": "410000",
"Name": "河南省",
"level": [
{
"Code": "414500",
"Name": "郑州市",
"level": [
{
"Code": "414500",
"Name": "二七区",
"sort": 1
},
{
"Code": "414500",
"Name": "中原区",
"sort": 2
}
],
"sort": 1
},
{
"Code": "414530",
"Name": "新乡市",
"level": [
{
"Code": "414530",
"Name": "卫滨区",
"sort": 1
},
{
"Code": "414530",
"Name": "牧野区",
"sort": 2
}
],
"sort": 2
}
]
}
]
2.10,10级-----把数组赋给对象(与前面的有点不一样),注意这个不是json格式的数据
{cityData=
[
{
"Code": "940000",
"Name": "澳门特别行政区",
"level": [
{
"Code": "940000",
"Name": "澳门特别行政区",
"level": [
{
"Code": "940000",
"Name": "澳门特别行政区",
"sort": 1
}
],
"sort": 1
}
]
},
{
"Code": "410000",
"Name": "河南省",
"level": [
{
"Code": "414500",
"Name": "郑州市",
"level": [
{
"Code": "414500",
"Name": "二七区",
"sort": 1
},
{
"Code": "414500",
"Name": "中原区",
"sort": 2
}
],
"sort": 1
},
{
"Code": "414530",
"Name": "新乡市",
"level": [
{
"Code": "414530",
"Name": "卫滨区",
"sort": 1
},
{
"Code": "414530",
"Name": "牧野区",
"sort": 2
}
],
"sort": 2
}
]
}
]
}
这个对象当中可以添加非json格式的数据,如下
2.11,11级-----对象
{cityData=
[
{
"Code": "940000",
"Name": "澳门特别行政区",
"level": [
{
"Code": "940000",
"Name": "澳门特别行政区",
"level": [
{
"Code": "940000",
"Name": "澳门特别行政区",
"sort": 1
}
],
"sort": 1
}
]
},
{
"Code": "410000",
"Name": "河南省",
"level": [
{
"Code": "414500",
"Name": "郑州市",
"level": [
{
"Code": "414500",
"Name": "二七区",
"sort": 1
},
{
"Code": "414500",
"Name": "中原区",
"sort": 2
}
],
"sort": 1
},
{
"Code": "414530",
"Name": "新乡市",
"level": [
{
"Code": "414530",
"Name": "卫滨区",
"sort": 1
},
{
"Code": "414530",
"Name": "牧野区",
"sort": 2
}
],
"sort": 2
}
]
}
],applyId=1711101632412997, wxOpenId=ogM9Bt0dTFX20JeMjMTFFqVAY2go, ext1=null, ext2=null, ext3=null, orderParam={}, wxModuleType=quliYhxkz, isFirst=true
}
三,json字符串与json对象的区别
字符串:这个很好解释,指使用“”双引号或’’单引号包括的字符。例如:var comStr = 'this is string';
json字符串:指的是符合json格式要求的js字符串。例如:var jsonStr = "{StudentID:'100',Name:'tmac',Hometown:'usa'}";
json对象:指符合json格式要求的js对象。例如:var jsonObj = { StudentID: "100", Name: "tmac", Hometown: "usa" };
四,json数据的应用
未完待续。。。。。。
json格式数据整理的更多相关文章
- iOS开发之JSON格式数据的生成与解析
本文将从四个方面对IOS开发中JSON格式数据的生成与解析进行讲解: 一.JSON是什么? 二.我们为什么要用JSON格式的数据? 三.如何生成JSON格式的数据? 四.如何解析JSON格式的数据? ...
- 解析json格式数据
实现目标 读取文件中的json格式数据,一行为一条json格式数据.进行解析封装成实体类. 通过google的Gson对象解析json格式数据 我现在解析的json格式数据为: {",&qu ...
- ios网络学习------6 json格式数据的请求处理
ios网络学习------6 json格式数据的请求处理 分类: IOS2014-06-30 20:33 471人阅读 评论(3) 收藏 举报 #import "MainViewContro ...
- fastJson java后台转换json格式数据
什么事JSON? JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式. 易于人阅读和编写.同时也易于机器解析和生成. 它基于JavaScript Progra ...
- ajax请求后台,返回json格式数据,模板!
添加一个用户的时候,需要找出公司下所有的部门,和相应部门下的角色,利用ajax请求,实现联动技术.将返回的json格式数据,添加到select标签下. <script type="te ...
- 使用C#中JavaScriptSerializer类将对象转换为Json格式数据
将对象转换为json格式字符串: private JavaScriptSerializer serializer = new JavaScriptSerializer(); protected voi ...
- 使用getJSON()方法异步加载JSON格式数据
使用getJSON()方法异步加载JSON格式数据 使用getJSON()方法可以通过Ajax异步请求的方式,获取服务器中的数组,并对获取的数据进行解析,显示在页面中,它的调用格式为: jQuery. ...
- Ajax返回html和json格式数据
Ajax可以返回text和xml格式 可以用Ajax返回大段的html文本和json格式的字符串,然后用eval()方法 转化为json对象 php中的json编码:json_encode(); ph ...
- 实现android上解析Json格式数据功能
实现android上解析Json格式数据功能,该源码转载于安卓教程网的,http://android.662p.com ,个人感觉还不错的,大家可以看看一下吧. package com.practic ...
随机推荐
- BZOJ 4129: Haruna’s Breakfast [树上莫队 分块]
传送门 题意: 单点修改,求一条链的mex 分块维护权值,$O(1)$修改$O(S)$求mex...... 带修改树上莫队 #include <iostream> #include < ...
- gradle一个已删除的项目找不到
排查了已有模块未果,到.idea目录中找到了gradle.xml文件,发现其中externalProjectPath指向的正是报错的那个已删除项目,改之,刷gradle,解决.
- 痞子衡随笔:常用的数据传输差错检测技术(1)- 奇偶校验(Parity Check)
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家讲的是嵌入式数据传输里的差错检测技术-奇偶校验. 在嵌入式应用里,除了最核心的数据处理外,我们还会经常和数据传输打交道.数据传输需要硬件传输接口 ...
- centos 环境变量配置
CentOS系统下如何将PHP和mysql命令加入到环境变量中,在Linux CentOS系统上 安装完php和MySQL后,为了使用方便,需要将php和mysql命令加到系统命令中,如果在没有添加到 ...
- Eclipse中如何忽略报错的js文件
https://jingyan.baidu.com/article/4f7d5712d3701a1a20192786.html
- Spring MVC中Session的正确用法之我见
Spring MVC是个非常优秀的框架,其优秀之处继承自Spring本身依赖注入(Dependency Injection)的强大的模块化和可配置性,其设计处处透露着易用性.可复用性与易集成性.优良的 ...
- ubuntu17.10 安装firefox的flash
1. flash下载地址:https://get.adobe.com/flashplayer/ 2. 选择tar.gz for linux 3. 下载后解压tar包.里面有个libflashplaye ...
- Nginx前端设置反向代理,后端Apache如何获取访客的真实IP,结合PHP
nginx反向代理后,在应用中取得的ip都是反向代理服务器的ip,取得的域名也是反向代理配置的url的域名,解决该问题,需要在nginx反向代理配置中添加一些配置信息,目的将客户端的真实ip和域名传递 ...
- Node.js入门(含NVM、NPM、NVM的安装)
本文最初发表于博客园,并在GitHub上持续更新前端的系列文章.欢迎在GitHub上关注我,一起入门和进阶前端. 以下是正文. Node.js的介绍 引擎 引擎的特性: JS的内核即引擎.因为引擎有以 ...
- UVA-12166 天平性质+字符处理
这题思维难度很大,关键是总结这个性质. 1.天平性质:某个秤砣重量为w,高度为h,如果要让这个天平平衡并且以这个秤砣为基准,那么整个天平的总重量为w*(2^h) 2.利用这个性质:题目要求秤砣数量改变 ...