json
- 一、`JSON`
- 1.1 概述
- 1.2 数据结构
- 1.3 值
- 1.4 字符串
- 1.5 数值
- 二、编程语言与`JSON`
- 2.1 `JavaScript`与`JSON`
- 2.2 `Python`与`JSON`
一、JSON
1.1 概述
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,易于人阅读和编写。同时也易于机器解析和生成。
JSON采用完全独立于语言的文本格式,常用于客户端和服务器之间的数据传输。

1.2 数据结构
JSON构建两种数据结构:数组(Array)和对象(Object)
数组在
Python语言中称为列表(List);对象在Python语言中称为字典(Dict)
数组是值的有序集合。一个数组以左中括号开始,右中括号结束,值之间使用逗号分隔。

['Tom',25,true,null]
对象是一个无序的名/值对集合。一个对象以左花括号开始, 右花括结束。每个名称后跟一个冒号 ,名/值对之间使用逗号分隔。

{"id":1,"username":"Tom","age":23,"sex":true
}
1.3 值
值可以是字符串、数值、true、false、 null、对象或者数组,这些结构可以嵌套。

[["Tom",23,true],["Rose",21,false],["Frank",18,true]
]
{"id" : 1,"username" : "Tom","age" : 25,"score" : {"chinese" : 109,"math" : 150,"english" : 139}
}
1.4 字符串
字符串是由双引号包围的任意数量Unicode字符的集合,使用反斜线转义。一个字符即一个单独的字符串。

{"id":1,"subject":"迭代 JSON 对象"
}
1.5 数值
数值为合法的数字表现形式,包括整数、小数及科学计数法。

二、编程语言与JSON
2.1 JavaScript与JSON
JSON.parse()方法用于将JSON格式的字符串转换为JavaScript对象,其语法结构是:
JSON.parse(text)
其中:
● text参数指要解析的JSON格式字符串
JavaScript代码如下:
var json = '["tom","rose","frank","ben","david"]';
var array = JSON.parse(json);
JSON.stringify()方法用于将JavaScript对象转换为JSON格式的字符串,其语法结构是:
JSON.stringify(value)
其中:
● value参数指要序列化为JSON格式的值
JavaScript代码如下:
var obj = { name: "John", age: 30, city: "New York" };
var str = JSON.stringify(obj)
2.2 Python与JSON
Python中,可以使用内置的json模块来处理JSON数据。
import json
json.dumps()方法用于将Python对象序列化为JSON格式的字符串,其语法结构是:
json.dumps(obj)
Python代码如下:
import jsonobj = {"name": "John", "age": 30, "city": "New York"}
str = json.dumps(obj)print(str) # 输出:{"name": "John", "age": 30, "city": "New York"}
json.loads()方法用于将JSON格式的字符串反序列化为Python对象,其语法结构是:
json.loads(s)
Python代码如下:
import jsonstr = '{"name": "John", "age": 30, "city": "New York"}'
obj = json.loads(str)