你可以把JSON理解成数据界的普通话。想象两个程序(或人和程序)需要交换信息,它们必须用一种彼此都懂的“语言”来描述数据——JSON就是这种语言。
它的核心就一条:用一种轻量、易读的文本格式,在不同系统之间传递和存储结构化的数据。 它不像Excel表格那样有样式,也不像Word文档那样复杂,它只专注做一件事:清晰、无歧义地“包装”数据,让发送方和接收方都能准确理解。
.json文件来存储你的个性化设置,因为它结构清晰,修改起来方便。简单对比:XML像写公文,标签严谨但冗长;JSON像发微信,结构直接,说重点。
")包裹。"姓名" 正确,'姓名' 或 姓名 错误。42, 3.14, -10 都行。true 或 false(小写)。null(小写)。{} 包裹,里面是 键值对。键必须是字符串(双引号),值可以是任何类型,键值对之间用逗号分隔。 {
"name": "张三",
"age": 25,
"isStudent": true
}
[] 包裹,里面是一组值,用逗号分隔。值可以是任何类型,甚至混搭。 ["苹果", "香蕉", "橙子"]
[1, true, "文本", null, {"key": "value"}]
一个常用组合:对象里包含数组,数组里又包含对象——这就能描述非常复杂的数据了,比如一个班级的花名册。
true、false、null 必须全小写。UTF-8 无BOM编码,避免乱码。 {
"name": "张三",
"age": 25,
}
正确:删掉 25 后面的逗号。
{
'name': '张三'
}
正确:全部换成双引号。
{
name: "张三"
}
正确:给 name 加上双引号。
前端(JavaScript)中处理JSON就两个核心操作:
const jsonString = '{"name": "张三", "age": 25}';
const obj = JSON.parse(jsonString); // 变成对象
console.log(obj.name); // 输出:张三
const obj = {name: "张三", age: 25};
const jsonString = JSON.stringify(obj); // 变成字符串
// 现在可以把这个jsonString发给后端了
import json
# 把字符串变成字典(Python里的对象)
data_dict = json.loads('{"name": "张三", "age": 25}')
print(data_dict["name"])
# 把字典变成字符串
json_string = json.dumps(data_dict, ensure_ascii=False) # 确保中文正常显示
如果你的工作不涉及代码,只是偶尔需要查看或简单编辑JSON配置文件,最佳方式是使用一个好的编辑器(见第四部分),直接打开修改、保存即可。重点在于确保格式正确,不破坏原有结构。
核心逻辑:先解析(读)成你所用编程语言中的原生对象/字典/列表,然后像操作普通变量一样修改,最后再序列化(写)回JSON字符串。
修改示例(JavaScript):
let data = JSON.parse('{"score": 95}'); // 1. 读取解析
data.score = 100; // 2. 修改数据
data.rank = "A+"; // 2. 添加新数据
const newJsonString = JSON.stringify(data); // 3. 写回字符串
console.log(newJsonString); // 输出:{"score":100,"rank":"A+"}
Network(网络)选项卡中点击任意请求,在 Preview(预览)或 Response(响应)标签页里,返回的JSON数据会被自动格式化展示,一目了然。.json 文件拖进浏览器窗口,大部分现代浏览器都能以清晰的树状结构展示它。{"age": "25"} 和 {"age": 25} 完全不同。前者是字符串,不能直接做数学运算。务必根据实际用途决定类型。