PM勇闯技术 – JSON

0 评论 268 浏览 1 收藏 5 分钟

JSON,一种轻量级的数据交换格式,正在改变我们如何在不同的系统和平台间传递信息。相较于传统的XML,JSON的优势在于其轻量、易解析和跨语言兼容性,使其成为现代Web开发中不可或缺的一部分。

一、定义

JSON的全称是JavaScript Object Notation(JavaScript对象表示法),虽源自JavaScript的对象语法,但如今已成为跨语言、跨平台的通用数据交换标准,其核心价值是「让不同系统/端之间能高效、无歧义地传递数据」;它不是编程语言也不是数据库,而是一种「数据描述格式」,只负责用统一的语法描述数据的结构和内容。

二、语法格式

JSON的语法基于 键值对(Key-Value Pair)数据集合,所有规则都是强制性的❗️❗️

三、为什么JSON为成为主流?

对比传统的数据交换格式(如XML),JSON 的核心优势是轻量、易解析、跨语言兼容:

  • 轻量:相同数据,JSON 的体积比XML小30%-50%(XML 需要大量标签,如<name>张三</name>,JSON 只需”name”: “张三”),传输速度更快(尤其适合网络带宽有限的场景,如手机 APP);
  • 易解析:几乎所有主流编程语言(Python、Java、JavaScript、Go、PHP 等)都内置了「JSON 解析库」,无需额外开发 —— 比如 Python 用json模块,JavaScript 直接用JSON.parse(),1-2 行代码就能将 JSON 字符串转成程序能操作的 “对象/字典”;
  • 无歧义:语法严格且简洁,不存在解析歧义(XML可能因标签嵌套、命名空间等出现解析问题)。

四、类比一下

你肯定收过快递吧?不管是顺丰、京东还是中通,所有快递面单上要填的信息都差不多:收件人姓名、电话、地址,寄件人姓名、电话—— 这些 “固定栏目” 就像 JSON 的 “规则”,而你填的具体内容(比如 “张三、138xxxx8000、湖南省长沙市岳麓区XX路”)就是JSON里的 “数据。假设你要给朋友寄一箱水果,快递单会这么写:

对应到JSON就是下面这样:

注意:JSON里不允许注释!上方示例中的注释仅仅用于说明。

五、浏览器控制台查看JSON

最后,我再给你个通过浏览器控制台查看接口返回JSON格式数据的示例,咱就用下红书首页请求数据来简单说明下:

当用户点击“发现”栏目时,前端会调用sns/web/v1/homefeed这个接口向后端请求用于展示的数据。如果调用成功,接口会讲数据以JSON格式Response给前端,前端同学拿到数据后就可以做页面的动态渲染了,是的,前后端数据交互就是这么简单!

本文由 @肖沐 原创发布于人人都是产品经理。未经作者许可,禁止转载

题图来自Unsplash,基于CC0协议

更多精彩内容,请关注人人都是产品经理微信公众号或下载App
评论
评论请登录
  1. 目前还没评论,等你发挥!