HTML、XML、JSON 是什么?有什么区别?又是做什么的?

在学习前端开发或者理解互联网工作原理的过程中,我们经常会遇到三个非常重要的概念:HTML、XML 和 JSON。它们看起来有点像,但其实干的事情完全不同。


🏁 一、他们是谁?什么时候诞生的?

名称 全称 诞生时间 谁发明的 用途
HTML HyperText Markup Language 1991 Tim Berners-Lee(万维网之父) 构建网页
XML eXtensible Markup Language 1998 W3C(万维网联盟) 存储/传输结构化数据
JSON JavaScript Object Notation 2001(流行于2005年后) Douglas Crockford 数据交换,前后端通信

🧱 二、他们长得像吗?

是的,三者都使用了"结构化的标记"或"对象形式",但内容和目的是完全不同的!

示例对比:我们想表示一个用户的信息

✅ HTML(展示内容给人看)--超文本标记语言
html 复制代码
<h1>用户信息</h1>
<p>姓名:小明</p>
<p>年龄:18</p>
✅ XML(结构化的数据,用给程序)--可扩展标记语言
xml 复制代码
<user>
  <name>小明</name>
  <age>18</age>
</user>
✅ JSON(轻量级数据,前后端通信)
json 复制代码
{
  "name": "小明",
  "age": 18
}

🔍 三、他们是干什么的?

项目 HTML XML JSON
用来干嘛? 构建网页,给人看 存数据、传数据,给程序用 前后端通信传数据
目标对象 浏览器、人类 系统、机器、开发者 JavaScript、前端、后端
能不能显示页面? ✅ 可以 ❌ 不行 ❌ 不行
可读性 ✅ 人能读 ✅ 稍复杂 ✅ 简洁易读
是否轻量 ❌ 偏重 ❌ 偏重 ✅ 超轻量
常用场景 网页开发 配置文件、旧系统数据交换 Web 接口、前端开发

🚀 四、他们存在的意义是什么?

✅ HTML:网页的骨架和展示者

  • 是所有网页的基础
  • 决定了页面的结构和内容怎么展示
  • 搭配 CSS 和 JavaScript 构成完整的网页

✅ XML:数据传输时代的"统一语言"

  • 被设计用来替代各种杂乱无章的自定义格式
  • 可以自定义标签,结构清晰,机器可读
  • 在配置文件、办公文档、金融系统中仍在大量使用

✅ JSON:现代互联网的"数据快递"

  • 比 XML 更简单轻量
  • 和 JavaScript 配合天衣无缝,前端能直接读写
  • 几乎成为今天前后端通信的"标准格式"

🎯 五、它们之间是什么关系?

可以这么理解:

  • HTML 是网页展示的"容器"
  • XML 和 JSON 是网页背后传来的"内容"
  • 以前我们用 XML 装数据,现在用 JSON 装得更多,因为它更快更轻
  • HTML 不负责存数据,它只负责"怎么把内容展示出来"

比喻一下:

想象你点了一份外卖:

  • HTML 是你的餐盘和桌子 ------ 把饭摆出来、呈现出来
  • XML 或 JSON 是送来的饭菜本身 ------ 真实的数据和内容

📌 六、总结一张表搞清楚

特点/比较 HTML XML JSON
是否用于展示 ✅ 是 ❌ 否 ❌ 否
是否用于存/传数据 ❌ 否 ✅ 是 ✅ 是
是否自定义标签 ❌ 否(固定) ✅ 是 ❌(对象结构)
语法复杂度 中等
是否人/机器都能读 ✅ 是 ✅ 是 ✅ 是(更轻)
使用频率(现代开发) ✅ 高 ⬇ 减少 ✅ 非常高
常见在哪些地方 网页结构 配置、文档、老系统 前后端接口,移动开发

🎉 七、最后一口气总结:

  • HTML 负责网页的"外貌"
  • XML 和 JSON 负责网页的"内容"
  • XML 是过去的数据格式标准,适合严谨的场景
  • JSON 是今天最流行的数据交换格式
  • 三者各有用途,配合使用,构成现代互联网的基础
相关推荐
时光轻浅,半夏挽歌12 小时前
python不同格式文件的读写方式(json等)
python·json
0思必得016 小时前
[Web自动化] HTML列表标签
运维·python·自动化·html·web自动化
郭庆汝18 小时前
json库保存字典数据到本地
人工智能·深度学习·json
TextIn智能文档云平台20 小时前
抽取出的JSON结构混乱,如何设计后处理规则来标准化输出?
人工智能·json
烤麻辣烫21 小时前
黑马大事件学习-15(前端登录页面)
前端·css·vue.js·学习·html
询问QQ:48773927821 小时前
Comsol光子晶体仿真:复现子刊论文的奇妙之旅
html
weixin_307779131 天前
Jenkins Jackson 2 API插件详解:JSON处理的基础支柱
运维·开发语言·架构·json·jenkins
杨超越luckly1 天前
HTML应用指南:利用GET请求获取全国新东方门店位置信息
前端·数据库·arcgis·html·门店数据
微风粼粼1 天前
html对接阿里云百炼AI大模型
人工智能·阿里云·html
编织幻境的妖1 天前
Python读写CSV与JSON文件方法
开发语言·python·json