一、JSON语法规则
- JSON语法是javascript对象表示语法的子集
- 语法格式一般为:
- 数据在“名称/值”对中
- 数据由逗号分隔
- 大括号{}保存对象
- 中括号[]保存数组
- 在线格式化工具:https://www.bejson.com/。可以在其中检测JSON对象的语法是否正确,并且自动对你的JSON进行格式化
二、“名称/值”对
- JSON数据的书写格式是:“名称/值”对
- 名称必须是字符串类型
- 值可以是下面的类型:
- 数字(整数或浮点数)
- 字符串(在双引号中)
- 逻辑值(true 或 false)
- 数组(在中括号中)
- 对象(在大括号中)
- null
演示案例
{
"name":"dongshao",
"age":17,
"professional":{
"english":4,
"putonghua":2,
"computer":3
},
"languages":[
"C++",
"C"],
"phone":{
"number":"152xxxxxxxx",
"type":"home"
},
"book":[
{
"name":"Linux",
"price":25
},
{
"name":"C++",
"price":30
}
],
"vip":true,
"adderss":null
}
- 语法解释:
- name、age:字符串类型
- professional、phone:对象类型
- languages、books:数组类型
- vip:布尔类型
- address:值为null
- 对上面的语言进行检测,结果是正确的
三、“值”的数据类型
- 上面说过了,“值”的类型可以为:
- 数字(整数或浮点数)
- 字符串(在双引号中)
- 逻辑值(true 或 false)
- 数组(在中括号中)
- 对象(在大括号中)
- null
数字(整数或浮点数)
"age":17
"height":180.5
字符串(在双引号中)
"name":"dongshao"
布尔值(true 或 false)
- JSON 布尔值可以是 true 或者 false
- 例如:
"flag":true
对象(在大括号中)
"phone":{
"number":"152xxxxxxxx",
"type":"home"
}
数组(在中括号中)
- JSON数组在中括号中书写,数组也可以包含多个对象
- 例如:
"languuages":["C++", "C"]
"sites": [
{"name":"Linux服务器开发", "url":"www.xxx.com"},
{"name":"google", "url":"www.google.com"},
]
null
"adderss":null
四、cJSON开发库
五、jsoncpp开发库