什么是JSON
JSON全称是Javascript Object Notation(对象表示法),是一种在不同平台间传递数据的文本格式(数据交换格式)。常见的数据交换格式有XML、JSON两种,我们主要研究JSON。
数据交换格式十分重要,开发人员需要使用它们来实现不同系统之间的数据交换。
JSON基于Javascript对象字面量,但是独立于任何编程语言,真正重要的是表示法本身,所以在学习JSON之前不必先学习Javascript。当然,有Javascript基础那是再好不过了。
JSON语法
JSON中使用键值对的数据结构,示例如下:
{
"name": "dawei",
"age":22,
"isMan":true
}
名称始终需要加上双引号,多个键值对使用逗号隔开。
以下两种表示方式都是错误的:
{ name: "dawei" }
这是Javascript对象而不是JSON
{ 'name': 'dawei' }
这也是Javascript对象,因为在Javascript对象中允许使用单引号代替双引号。
JSON数据交换格式可以作为独立的文件存在于文件系统中,文件扩展名为.json。在传递数据的时候需要提前告知接收方接收的数据是什么类型。这时候就会涉及到媒体类型,也叫做内容类型或者MIME类型。常见的MIME类型是text/html,JSON的MIME类型是application/json。
JSON数据类型
JSON中的数据类型包括:对象、字符串、数字、布尔值、null和数组。
对象类型
JSON中的对象类型十分简单,JSON本身就是对象,也就是被一对花括号{}
包裹的键值对的列表。对象可以嵌套使用。
对象可以包含多个键值对。
键必须是字符串,值可以是合法的 JSON 数据类型(字符串, 数字, 对象, 数组, 布尔值或 null)。
{
"person":{
"name":"dawei",
"