JSON解析
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。
JSON的形式是用大括号“{}”
包围起来的项目列表,每一个项目间用逗号(,)分隔,而项目就是用冒号(:)分隔的属性名和属性值。这是典型的字典表示形式,也再次表明javascript
里的对象就是字典结构。不管多么复杂的对象,都可以用一句JSON
代码来创建并赋值。在JSON
中,名称/值对 包括字段名称(在双引号中),后面写一个冒号,然后是值
JSON的两种结构
json
简单说就是javascript
中的对象和数组,所以这两种结构就是对象和数组两种结构,通过这两种结构可以表示各种复杂的结构
1、对象:对象在js中表示为“{}”
括起来的内容,数据结构为 {key:value,key:value,...}
的键值对的结构,在面向对象的语言中,key为对象的属性,value为对应的属性值,所以很容易理解,取值方法为 对象.key
获取属性值,这个属性值的类型可以是 数字、字符串、数组、对象几种。
2、数组:数组在js中是中括号“[]”
括起来的内容,数据结构为 ["java","javascript","vb",...]
,取值方式和所有语言中一样,使用索引获取,字段值的类型可以是 数字、字符串、数组、对象几种。
经过对象、数组2种结构就可以组合成复杂的数据结构了。
JSON 的语法规则
在 JS 语言中,一切都是对象。因此,任何支持的类型都可以通过 JSON 来表示,例如字符串、数字、对象、数组等。但是对象和数组是比较特殊且常用的两种类型:
1.数组(Array)用方括号(“[]”)表示。
2.对象(Object)用大括号(”{}”)表示。
3.名称/值对(name/value)组合成数组和对象。
4.名称(name)置于双引号中,值(value)有字符串、数值、布尔值、null、对象和数组。
5.并列的数据之间用逗号(“,”)分隔
基本JSON字符串
JSON 中的字符串必须用双引号包围。
{ "name":"John" }
json数字
{ "age":30 }
JSON 中的值可以是对象。
{
"employee":{ "name":"Bill Gates", "age":62, "city":"Seattle" }
}
JSON 中的值可以是数组。
{ "employees":[ "Bill", "Steve", "David" ] }
JSON 中的值可以是 true/false。
{ "sale":true }
JSON 中的值可以是 null。
{ "middlename":null }