Json schema前奏 关于JSON
1. 何为 JSON
JSON( JavaScript Object Notation ),即 JavaScript 对象表示法。JSON 主要用于存储和交换文本信息,类似于XML。但是和 XML 相比,JSON 是更加轻量级的文本数据交换格式,具有更小、更快、更易解析的特点。JSON 具有自我描述性,更易理解。虽然 JSON 使用 JavaScript 语法来描述数据对象,但是,JSON 是独立于语言和平台的。JSON 解析器和 JSON 库支持许多不同的编程语言。
2. JSON 基本语法
JSON 语法是 JavaScript 对象表示法语法的子集。具体内容如下:
- 数据在key/value对中存储
- 数据由逗号分隔
- 花括号保存对象
- 方括号保存数据
3. JSON值的类型
JSON的数据都在key/value对中存储,其中,这个值,可选类型如下:
数字(整数或浮点数),例如:{ "number":12.34 }
字符串(在双引号中),例如:{ "name":"qiumengchen" }
逻辑值(true 或 false),例如:{ "isOpen":true }
数组(在中括号中),例如:{ "array":[1.2 , "3" , true , [4,5] , {"test":"ok"} , null] }
对象(在大括号中),例如:{ "person":{"name":"qiumengchen","isHandsome":true} }
null,例如:{ "blog":null }
总体来说,JSON的完整表现形式有两种:
- JSON对象:以大括号({})为标志,对象可以包含多个key/value对,注意:对象中的每一项都必须是key/value对,不能是其他形式。但是,其中的key必须是字符串,其中的value可以是合法的JSON数据类型包括:数字、字符串、逻辑值、数组、对象、null等。例如:
{
"name": "qiumengchen",
"isHandsome": true,
"blog": {
"url": "qiumengchen.top",
"name": "myBlog"
}
}
- JSON数组:以中括号([])为标志,数组可以包含多个value,value可以是合法的JSON数据类型包括:数字、字符串、逻辑值、数组、对象、null等。但是,一般来说,我们会保持数据中每个项的形式和意义的一致性,方便理解和运用。例如:
[ 99 , "qiumengchen" , true , [1,2,3] , {"name":"qiumengchen"} , null ]
4. 与XML比较
与XML相同之处
- JSON 是纯文本
- JSON 具有”自我描述性”(人类可读)
- JSON 具有层级结构(值中存在值)
- JSON 可通过 JavaScript 进行解析
- JSON 数据可使用 AJAX 进行传输
与XML不同之处
- 没有结束标签
- 更短
- 读写的速度更快
- 能够使用内建的 JavaScript eval() 方法进行解析
- 使用数组
- 不使用保留字
5. 辅助工具
JSON在线解析工具(功能包括:JSON格式化、压缩、验证格式、JSON转XML、CSV、YAML),地址如下:https://c.runoob.com/front-end/53
Chrome浏览器插件:JSON-handle
原文:https://blog.csdn.net/qiumengchen12/article/details/72283079
Json schema前奏 关于JSON的更多相关文章
- 技术那么多,你想看看JSON Schema的测试吗?
目录 1. 什么是JSON Schema? 2. 如何定义一个JSON Schema 3. 如何测试JSON Schema a) 使用JSON Schema validator GUI b) 在Jav ...
- Json.Net使用JSON Schema验证JSON格式
Json.NET supports the JSON Schema standard via the JsonSchema and JsonValidatingReader classes. It s ...
- JSON Schema 校验实例
JSON Schema 简介 JSON Schema is a vocabulary that allows you to annotate and validate JSON documents. ...
- Json Schema简介
1. 引言 什么是Json Schema? 以一个例子来说明 假设有一个web api,接受一个json请求,返回某个用户在某个城市关系最近的若干个好友.一个请求的例子如下: { "city ...
- json schema校验
工作中使用到了json schema格式校验的问题,在网上查了些资料,结合自己的理解记录一下. json schema可以对json结果字符串做出一些约束,例如: 1. 值类型是:array, obj ...
- Json schema 以及在python中的jsonschema
目录 1. JSON Schema简介 2. JSON Schema关键字详解 2.1 $schema 2.2 title和description 2.3 type 3 type常见取值 3.1 当t ...
- Map传参优雅检验,试试json schema validator
背景 笔者目前所在团队的代码年代已久,早年规范缺失导致现在维护成本激增,举一个深恶痛疾的例子就是方法参数使用Map"一撸到底",说多了都是泪,我常常在团队内自嘲"咱硬是把 ...
- 使用JSON Schema来验证接口数据
最近在做一些关于JSON Schema的基建,JSON Schema可以描述一个JSON结构,那么反过来他也可以来验证一个JSON是否符合期望的格式. 如果之前看我写的<使用joi来验证数据模型 ...
- Json.Net使用JSON Schema验证JSON格式【实例】
给出一个Json,验证其格式是否符合规则. { "coord": { //对象 "lon": 145.77, "lat": -16.92 } ...
随机推荐
- python变量d的说明
[变量] 什么是变量: 变:现实世界中的状态是会发生改变的. 量:记录现实世界中的状态,让计算机能够像人一样去识别世间万物 是变化的量 变量的组成: 变量名:变量名用来引用变量值,但凡需要用变量值,都 ...
- win10系统2分钟睡眠
https://blog.csdn.net/widenstage/article/details/78982722 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSe ...
- UIAutomatorViewer、Inspector获取元素信息
一.UIautomatorViewer 它是Android SDK的一个工具,如果安装了 Android SDK,就可以在cmd窗口直接输入uiautomatorviewer打开. 点击左上角的第二个 ...
- svn无法还原 、svn无法更新
报错: Previous operation has not finished; run 'cleanup' if it was interrupted 上一个操作尚未完成:如果中断,请运行“清理”
- asp.netCore3.0 中使用app.UseMvc() 配置路由
一.新配置路由策略 在 Asp.Net Core 3.0中默认不再支持app.UserMvc() 方式配置路由 系统. 而是使用新的模式,点击查看asp.netCore3.0区域和路由配置变化 默认 ...
- mod_spatialite.so.7
- JPA连接PG数据库时间类型查询报错的修改
PG数据库中的时间格式规范: https://blog.csdn.net/sky_limitless/article/details/79527665 to_data 转换为 普通的时间格式 to_t ...
- UDP用于保持大量终端的在线与控制,应用与业务则通过TCP去实现。这个和FTP服务控制与数据分离,采取不同的连接,有异曲同工之处 端口映射老化时间
移动端IM/推送系统的协议选型:UDP还是TCP? http://www.52im.net/thread-33-1-1.html
- Visionworks OpenVX
[TOC] Visionworks OpenVX OpenVX heterogeneous computation framework Spec OpenVX 1.2源碼解析 - 目錄結構 除了官方的 ...
- npm 加速之 yarn cnpm pnpm
npm 加速之 yarn cnpm pnpm 有没有感觉到使用 npm 的时候很慢? 安装速度 几Kb/s 不说, 还装着装着出错了, 奇奇怪怪的问题.这种情况大多数还是因为网络的原因, 很多时候虽然 ...