JSON(JavaScript Object Notation)是当今互联网世界最通用的数据交换格式。无论你是前端开发、后端工程师,还是产品经理,掌握 JSON 都是必备技能。
一、JSON 是什么?
JSON 是一种轻量级的数据交换格式,由 Douglas Crockford 在 2001 年提出。它基于 JavaScript 语法,但独立于语言,几乎所有编程语言都支持解析和生成 JSON。
核心特点
| 特点 | 说明 |
|---|---|
| 📦轻量 | 纯文本格式,体积小巧,传输高效 |
| 🌐跨语言 | Java、Python、Go、C# 等主流语言原生支持 |
| 👁️可读性强 | 结构清晰,人类和机器都能轻松阅读 |
| 🔄易于解析 | 内置解析器,一行代码即可完成转换 |
二、基本语法
{"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 |
三、实际应用
前后端交互
fetch('/api/user',{method:'POST',headers:{'Content-Type':'application/json'},body:JSON.stringify({id:1})});LocalStorage 存储
localStorage.setItem('user',JSON.stringify({name:'张三'}));constuser=JSON.parse(localStorage.getItem('user'));四、进阶技巧
// 美化输出JSON.stringify(data,null,2);// 安全解析try{constobj=JSON.parse(str);}catch(e){console.error('解析失败');}