JSON(JavaScript Object Notation,JavaScript对象表示法)是一种轻量级的数据交换格式。 JSON容易理解,便于阅读和编写;同时计算机也易于解析和生成,所以JSON有广泛的应用。
1. 名称 / 值对的集合在各种语言中,这可以作为对象(object)、记录(record)、结构(struct)、字典 (dictionary)、哈希表(hash table)、键控列表(keyed list)或关联数组(associative array)来实现。
2. 值的有序列表在大多数语言中,这是以数组(array)、向量(vector)、列表(list)或序列(sequence)的形式实现的。
1.对象(object)
对象是一组无序的名称/值对。对象以{(左大括号)开始,以}(右大括号)结束。每个名称后面跟着:冒号,名称/值对之间用逗号分隔。
比如:{"name":"zhangsan","sex":1,"age":25}
2.数组(Array)
数组是值的有序集合。数组以[(左中括号)开始,以](右中括号)结束。值之间用逗号分隔。
比如:
{
"man":[{"name":"zhangsan","sex":1,"age":21},
{"name":"lisi","sex":0,"age":18},
{"name":"wangwu","sex":0,"age":25}]
}
3.值(value)
值可以是字符串、数字、true/false、null、对象或数组。
4.字符串(string)
字符串是由零个或多个Unicode字符组成的序列,用双引号括起来,使用反斜杠转义。
字符表示为单个字符串。字符串非常类似于C或Java中的字符串。
5.数字(number)
一系列0-9的数字组合,可以为负数或者小数。还可以用e或者E表示为指数形式;
数字非常类似于C或Java数字,但只是不使用八进制和十六进制格式。
6.空白符(whitespace)
可以在任意成对的语法符号之间插入空白符(包括空格、换行符、回车符、横向制表符)。
例如
{"store":
{"book": [
{ "category": "reference",
"author": "Nigel Rees",
"title": "Sayings of the Century",
"price": 8.95 },{ "category": "fiction",
"author": "Evelyn Waugh",
"title": "Sword of Honour", "price": 12.99 },
{ "category": "fiction",
"author": "Herman Melville",
"title": "Moby Dick",
"isbn": "0-553-21311-3",
"price": 8.99 },
{ "category": "fiction",
"author": "J. R. R. Tolkien",
"title": "The Lord of the Rings",
"isbn": "0-395-19395-8",
"price": 22.99 } ],
"bicycle":
{
"color": "red",
"price": 19.95 }
}
}