JSON(JavaScript Object Notation)是当今互联网世界最通用的数据交换格式。无论你是前端开发、后端工程师,还是产品经理,掌握 JSON 都是必备技能。
一、JSON 是什么?
JSON 是一种轻量级的数据交换格式,由 Douglas Crockford 在 2001 年提出。它基于 JavaScript 语法,但独立于语言,几乎所有编程语言都支持解析和生成 JSON。
核心特点
| 特点 | 说明 |
|---|---|
| 📦 轻量 | 纯文本格式,体积小巧,传输高效 |
| 🌐 跨语言 | Java、Python、Go、C# 等主流语言原生支持 |
| 👁️ 可读性强 | 结构清晰,人类和机器都能轻松阅读 |
| 🔄 易于解析 | 内置解析器,一行代码即可完成转换 |
二、基本语法
json
{
"name": "张三",
"age": 25,
"isStudent": false,
"hobbies": ["编程", "阅读", "音乐"],
"address": {
"city": "北京",
"zip": "100000"
}
}
6 种数据类型
| 类型 | 示例 |
|---|---|
| 字符串 | "hello" |
| 数字 | 42, 3.14 |
| 布尔 | true, false |
| 空值 | null |
| 数组 | [1, 2, 3] |
| 对象 | {"a": 1} |
常见错误
| ❌ 错误 | ✅ 正确 |
|---|---|
{name: "Tom"} |
{"name": "Tom"} |
{'key': 'value'} |
{"key": "value"} |
[1, 2, 3,] |
[1, 2, 3] |
undefined |
null |
三、实际应用
前后端交互
javascript
fetch('/api/user', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ id: 1 })
});
LocalStorage 存储
javascript
localStorage.setItem('user', JSON.stringify({ name: '张三' }));
const user = JSON.parse(localStorage.getItem('user'));
四、进阶技巧
javascript
// 美化输出
JSON.stringify(data, null, 2);
// 安全解析
try {
const obj = JSON.parse(str);
} catch (e) {
console.error('解析失败');
}
五、测试效果
