当前位置: 首页 > news >正文

【JSON】通俗易懂的JSON介绍

文章目录

      • 一句话解释
      • 更形象的比喻
      • JSON 的3大特点
      • 为什么程序员爱用 JSON
      • 举个实际场景
      • 重要提醒
      • 终极总结

一句话解释

JSON 就是一种超级简洁、通用的“数据便签”格式——用来描述、记录或传输一些结构化的信息(比如你的购物清单、联系人名单、订单详情等)。


更形象的比喻

想象你网购时填收货地址要写:

姓名:张三
电话:138xxxx1234
地址:北京市海淀区xx路xx号

如果让电脑处理这个信息,JSON 会这样写:

{"姓名": "张三","电话": "138xxxx1234","地址": "北京市海淀区xx路xx号"
}

JSON 的3大特点

1️⃣ 像字典一样清晰
键:值 对的形式(就像字典里每个词条对应一条解释):

  • "键" 必须带双引号(“姓名”、“价格”)
  • 可以是数字、文字、布尔值(true/false),甚至是嵌套的JSON

2️⃣ 结构一目了然
{} 包裹一个对象,[] 包裹数组(列表),层次分明:

{"订单号": "DD20250811001","商品": [{"名称": "手机", "价格": 3999},{"名称": "耳机", "价格": 599}],"是否付款": true
}

3️⃣ 人机都能秒懂

  • 对人:像整理表格一样直观(比 Excel 更灵活)
  • 对机器:程序1秒就能解析成内存对象(省电又高效⚡)

为什么程序员爱用 JSON

🚀 轻便快捷:比 XML 简洁太多(省掉一堆标签符)
🌍 跨平台通用:几乎所有编程语言都原生支持
📡 网络传输标配:APP/网站前后端交互、API 接口 90% 用 JSON
🔧 配置文件常用:比如微信小程序的 app.json,VSCode设置…


举个实际场景

比如你刷微博时,客户端会向服务器请求数据:

// 服务器返回的 JSON 数据
{"user": {"name": "科技喵","followers": 120000},"tweets": [{"id": 101, "text": "AI手机要来了...", "likes": 3821},{"id": 99, "text": "折叠屏技术新突破", "likes": 2940}]
}

重要提醒

✅ 格式必须规范!双引号、逗号不能漏(像中文逗号、英文引号混用会报错)
✅ 支持的数据类型:字符串、数字、布尔值、数组、对象、null
❌ 不支持注释、函数等复杂操作(它只是个数据容器)


终极总结

JSON = 人机通吃的“数据快递箱”📦
{ } 当箱子,键值对当物品清单,[ ] 装多个同类项
程序员用它给程序之间“发快递”,高效无歧义!


试试打开浏览器按 F12 → Console,输入:

JSON.parse('{"message": "Hello JSON!"}').message

你会看到返回了 "Hello JSON!" ——瞬间理解程序如何“拆箱”数据了吧?😉

http://www.lryc.cn/news/617396.html

相关文章:

  • LangChain 框架 Parser 讲解
  • Spring Framework源码解析——InitializingBean
  • 基于数据结构用java实现二叉树的排序器
  • 零基础AI编程开发微信小程序赚流量主广告实战
  • Spring Framework源码解析——DisposableBean
  • 【PyTorch】单目标检测项目部署
  • 逃离城市与喧嚣,拥抱新的生活方式
  • 第2节 PyTorch加载数据
  • 5G与云计算对代理IP行业的深远影响
  • AI基础与实践专题:PyTorch实现线性回归
  • 开博尔雷电5数据线:120Gbps“闪电传输”,以Intel硬核基因从容优化数字生活
  • STM32CubeMX + HAL 库:用硬件IIC接口实现AT24C02 EEPROM芯片的读写操作
  • 【算法训练营Day23】贪心算法part1
  • InfluxDB 在物联网设备数据采集与分析中的应用(二)
  • Apache Ignite超时管理核心组件解析
  • 元数据管理与数据治理平台:Apache Atlas 基本搜索 Basic Search
  • 强化学习常用数据集
  • linux 秒 安装谷歌浏览器 区分ubuntu和centos 给python爬取网站使用
  • 提升行车安全的关键技术:BSD(盲点监测)与DSM(驾驶员监测)是如何工作的?
  • 剧本杀小程序系统开发:推动行业数字化转型新动力
  • 【VS Code - Qt】如何基于Docker Linux配置Windows10下的VS Code,开发调试ARM 版的Qt应用程序?
  • AI模型服务接入WAF防火墙
  • 为什么Open WebUI可以不联网问问题,而直接使用Ollama可能需要联网
  • 虚幻GAS底层原理解剖十 (网络)
  • Linux操作系统从入门到实战(二十)进程优先级
  • 汉森(1982)提出的广义矩估计法
  • ResponseBodyAdvice是什么?
  • Agent用户体验设计:人机交互的最佳实践
  • Cobalt Strike的简单搭建与使用
  • ARM基础概念 day51