1.简介
JSON全称
J
ava
S
cript
O
bject
N
otation,JavaScript对象表示法。顾名思义,用来表示一个对象的一种方法,说白了就是一种类似于XML的数据交换格式,但优点是比XML体积更小,更快,更容易解析。
2.语法格式
结构跟Java的类很相似有没有?JSON最外层是一对大括号,表示一个JSON对象,大括号内就是属性和值了。JSON的数据格式一定是键值对,like "name":"Harry","age":23。
数据之间由逗号隔开,花括号保存对象,方括号保存数组。
字符串类型: "name": "BeJson"
数字类型: "page": 88
对象:
"address": {
"street": "科技园路.",
"city": "江苏苏州",
"country": "中国"
}
对象数组:
"links": [
{
"name": "Google",
"url": "
http://www.google.com
"
},
{
"name": "Baidu",
"url": "
http://www.baidu.com
"
},
{
"name": "SoSo",
"url": "
http://www.SoSo.com
"
}
]
数组可以包含多个键值对
实例:
{
"name": "BeJson",
"url": "
http://www.bejson.com
",
"page": 88,
"isNonProfit": true,
"address": {
"street": "科技园路.",
"city": "江苏苏州",
"country": "中国"
},
"links": [
{
"name": "Google",
"url": "
http://www.google.com
"
},
{
"name": "Baidu",
"url": "
http://www.baidu.com
"
},
{
"name": "SoSo",
"url": "
http://www.SoSo.com
"
}
]
}
看得出JSON是树状结构,可以一直嵌套下去。
注意:JSON的属性名、以及字符串类型的值一定是要加双引号的。数字类型的值则不需要。数组类型一定是冒号之后方括号再花括号。
3.JS将JSON转换成对象
JSON.parse(jsonstr); //可以将json字符串转换成json对象
JSON.stringify(jsonobj); //可以将json对象转换成json对符串