JSON
中级通用
JSON 是一种用文本表示结构化数据的格式,能把对象、列表、文字、数字等内容按约定写出来。前端、后端和 AI 工具用它传递数据时,可以分清每个值属于哪个字段,例如一条订单的编号和金额。
你可能会说:「我想让前端和后端传订单信息时,能准确分清编号、金额和商品列表。」
动手看看订单数据的 JSON 对照
咖啡店 · 订单数据预览
用户看到的订单
订单编号ORD-1042
订单金额¥ 38
商品列表
燕麦拿铁、黄油可颂
传给系统的 JSON 文本
{
"orderId": "ORD-1042",
"amount": 38,
"items": [
"燕麦拿铁",
"黄油可颂"
]
}
订单编号
商品列表
字段高亮
用下方控件修改订单,再切换字段高亮看左右对应关系。右侧各字段也能悬停或用 Tab 聚焦;外层大括号把整条订单组织成一个对象。
拖动金额,右侧数字会同步变化。amount 的值没有引号,表示数字;左侧的人民币符号只是界面展示,不属于这个数值。
要点JSON 怎样把数据组织起来?
- 1
对象用字段名标明含义
一条订单可以写成包含订单号、金额和状态的对象。字段名和对应的值成对出现,这样前端拿到数据后,就能按字段名读取金额,而不用猜第三个值代表什么。
- 2
列表和基本值各有写法
多件商品可以放进数组;商品名称是字符串,数量是数字,是否付款可用布尔值表示。JSON 还可以用 null 表示当前没有值。类型写对了,接收方才方便继续计算或展示。
- 3
双方都得遵守同一套语法
JSON 的字段名和字符串要用双引号,字段之间用逗号分隔,末尾不能多放逗号,也不能加注释。因为程序会解析整段文本,所以一个符号写错,就可能导致整段数据读取失败。
容易混淆的地方
JSON 是数据的表示格式,不等于 API:API 约定怎么请求、返回什么,JSON 可以用来承载其中的数据。它也不是 JavaScript 对象本身;两者写法相近,但 JSON 是遵守固定语法的文本,不能直接写函数、undefined 或注释。
什么时候用
适合用
- 网站前端请求订单详情时,让后端用 JSON 返回订单号、金额和商品列表,方便页面按字段展示。
- 让 AI 工具输出固定字段的任务结果,例如标题、优先级和完成状态,方便程序接着处理。
- 从后台导出少量结构化配置,让另一个服务读取开关名称和对应的布尔值。
不适合用
- 传输图片或视频文件本体时,直接使用文件上传或对象存储;JSON 更适合传文件地址和相关信息。
- 写给人阅读的长篇使用说明时,用普通文档或 Markdown 更顺手,不必把整篇内容拆成 JSON 字段。
- 要频繁查询大量订单并维护关联关系时,用数据库存储;JSON 可以作为接口数据格式,但不替代数据库。
练一练选一个答案,看看解释
你在做订单页,后端要一次返回订单号、实付金额,以及每件商品的名称和数量。哪种交付方式最方便前端稳定读取?
让 AI 帮你做复制给 AI Agent 直接用
请把订单详情接口的响应设计成 JSON:包含字符串类型的订单号、数字类型的实付金额,以及商品对象数组;每件商品包含名称和数量。给出一份示例,并说明空商品列表如何表示。