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 是今天最流行的数据交换格式
  • 三者各有用途,配合使用,构成现代互联网的基础
相关推荐
那个失眠的夜1 天前
Mybatis延迟加载策略
xml·java·数据库·maven·mybatis
PieroPc1 天前
一个功能强大的 Web 端标签设计和打印工具,支持服务器端直接打印到局域网打印机。Fastapi + html
前端·html·fastapi
Java成神之路-1 天前
SpringMVC 响应实战指南:页面、文本、JSON 返回全流程(Spring系列13)
java·spring·json
我命由我123451 天前
在 React 项目中,可以执行 npm start 命令,但是,无法执行 npm build 命令
前端·javascript·vue.js·react.js·前端框架·json·ecmascript
mfxcyh1 天前
基于xml、注解、JavaConfig实现spring的ioc
xml·java·spring
带刺的坐椅1 天前
RFC 9535:JSONPath 的标准化之路
java·json·jsonpath·snack4·rfc9535
sayamber1 天前
Nginx + Docker部署个人博客,从零到上线完整教程(2026最新版)
html
榴莲omega1 天前
第12天:CSS(一)| Flexbox 布局完全指南
前端·css·html·js八股
vortex51 天前
SOAP 协议中的 XML 外部实体注入(XXE)漏洞
xml·网络安全·渗透测试
Dxy12393102161 天前
Python如何对XML进行格式化
xml·python