JSON 全称 JavaScript Object Notation,是一种轻量级纯文本数据交换格式,核心作用就是在不同程序、前端和后端、服务器和客户端之间传递结构化数据,现在网页接口 API、移动端 App、配置文件、跨语言数据通信几乎都在用 JSON,它最大优势是人类可以直接看懂,机器解析速度快,体积比 XML 更小,不管是 Java Python JS PHP 这些编程语言,都自带解析 JSON 的库,不用担心跨语言不兼容,很多初学者会把 JSON 当成编程语言,其实它不是代码,只是一套统一的数据书写规范,用来组织键值对、数组、字符串、数字、布尔值、null 这些基础数据,日常开发里前端请求后端接口,后端返回的数据绝大多数都是 JSON 格式,本篇会讲解 JSON 的用途、基础结构、适用场景,还有和 XML 的对比。
基础信息对照表
| 项目 | 内容 |
|---|---|
| 全称 | JavaScript Object Notation |
| 类型 | 轻量级文本数据交换格式 |
| 核心特点 | 跨语言、易读、体积小 |
| 支持数据类型 | 字符串、数字、布尔、null、对象、数组 |
| 常见使用场景 | API 接口、配置文件、数据存储 |
JSON 主要用途清单
第一点 前后端接口通信,这是最常用场景,前端发起请求,后端服务器返回 JSON 数据,前端拿到之后渲染页面,比如登录返回用户信息,列表页返回商品数据。
第二点 跨程序跨语言数据传输,不同编程语言写的系统之间交换数据,统一使用 JSON,避免各自私有格式无法识别。
第三点 软件配置文件,很多框架工具使用 json 作为配置文件,保存项目参数,可读性强,编辑方便。
第四点 本地数据存储,浏览器 localStorage、部分本地数据库,会把数据序列化成 JSON 文本保存。
第五点 移动端 App 和服务器通信,App 请求接口,接收服务端返回 JSON 数据包。
JSON 基础结构示例
{
"name": "张三",
"age": 18,
"isVip": true,
"hobby": ["读书","跑步"]
}
对象使用大括号,键必须用双引号,数组使用中括号,逗号分隔多个字段,这是 JSON 硬性语法规则。
JSON 和 XML 对比表格
| 对比项 | JSON | XML |
|---|---|---|
| 体积 | 更小 | 标签冗余,体积大 |
| 可读性 | 简洁直观 | 标签多,相对繁琐 |
| 解析速度 | 解析更快 | 解析较慢 |
| 跨语言支持 | 全部主流语言支持 | 支持 |
| 适用场景 | 现代 API 主流选择 | 老系统遗留项目较多 |
实操理解步骤
第一步,理解核心定位,JSON 只是数据容器,不能写业务逻辑代码。
第二步,识别 JSON 基础语法,记住键名必须双引号,不能写注释,这是新手高频报错点。
第三步,理解序列化和反序列化,程序对象转成 json 文本叫序列化,把 json 文本转成程序对象叫反序列化。
第四步,结合 API 场景理解,请求接口拿到响应,response 返回的数据包就是 JSON。
综合总结,JSON 就是跨程序通用的轻量文本数据格式,主要用来做前后端、跨系统的数据交换,是现在 Web 开发最主流的数据传输标准。
【常见问题】
问题 1 json 是用来干嘛的,json 是编程语言吗
回答 1 json 是用来干嘛的,json 不是编程语言,json 只是纯文本数据格式,不能执行代码逻辑,只负责保存和传递结构化数据。
问题 2 json 是用来干嘛的,为什么现在接口都喜欢用 json
回答 1 json 是用来干嘛的,json 体积小,解析快,跨所有编程语言,人类可读性好,相比 XML 更加轻便,所以现代 API 接口普遍选择 json。
问题 3 json 是用来干嘛的,json 里面可以写注释吗
回答 1 json 是用来干嘛的,标准 json 语法不支持注释,很多新手写 json 加上注释会解析报错,如果需要注释,一般是使用 jsonc 这类扩展格式,不是标准 json。
【免责申明】
本文属于前端开发技术科普,不同解析器对 JSON 扩展语法支持有差异,请严格遵循官方 JSON 规范,本文仅作学习参考,不代表其他立场。


