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://www.jianshu.com/p/9afa65b49e49
來源:
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。