猪头少年 - 云南AI专家 - 云南独立开发者
全部文章

Engineering note

什么是 JSON

在现代化 Web 应用开发中,广泛使用一种名为 JSON 的数据交换格式。JSON 是一种轻量级数据交换格式,在不同系统之间提供标准且高效的数据交换。

JSON 是什么

JSON的全称为 JavaScript Object Notation,意为 JavaScript 对象表示法。本质是一种文本格式,用于存储和交互数据,JSON 有着较好的阅读性,更易于学习和问题排查。现阶段 JSON 已经是大部分系统交互的首选格式。

为什么使用 JSON

JSON 是基于文本轻量级数据交换格式,使用上较为灵活,易于程序解析,便于人类理解。同时,JSON 的语言独立性使得其不受编程语言和系统平台的限制,例如使用 Java 开发的应用可以将 JSON 数据发送到 C# 开发的应用中进行解析。

JSON 广泛应用于当今的前后端分离开发模式中,前端和后端通过 JSON 格式定下通信协议,前端接收用户的输入整理为 JSON 格式发送给后端,后端解析并处理数据后将结果也通过 JSON 格式发送回前端,实现更好的 Web 交互体验。

JSON 还广泛被用于数据存储,各大应用将系统配置,用户偏好等通过 JSON 格式存储到文件中,方便后续直接读取使用。还有基于 JSON 格式开发的各大非关系型数据库数据库(nosql),如 LiteDB,MongoDB 等这类文档行数据库,原生使用 JSON 格式进行存储,在交换数据是不需要额外处理。除此之外,越来越多的关系型数据库也支持将 JSON 作为原生数据格式存储和分析。

JSON 数据类型

JSON支持多种数据类型,包括:

  • 对象:对象是JSON的核心,使用 {} 表示,对象的属性以键值对的形式表示,以逗号分隔,其中键必须是字符串并且不可重复。

  • 数组:数组使用 [] 表示,以逗号分隔。

  • 数字:不需要双引号,支持整数,小数/正数,负数。

  • 布尔:不需要双引号,只有 true 和 false 。

  • 字符串:字符串使用 "" 表示,可存储任何 Unicode 字符。

  • 空:空值使用 null 表示,表示该位置不存储任何数据。

一个标准的 JSON 数据格式如下所示,需要格式化JSON数据,可以使用JSON格式化工具

    {
        "name":"Bob",
        "age":45,
        "bald":true,
        "mark":null,
        "email":["abc@a.com","abc@b.com"]
    }

JSON 和 XML 对比

XML 全称为可扩展标记语言,也是一种文本数据交换格式,更多 XML 部分可以查看文章:什么是XML。在 JSON 出现之前,XML被大量用于应用数据交互和配置文件存储。例如,JavaScript中最早出现的http请求类名称为 XMLHttpRequest。就是基于当时 XML 为 Web 数据交换格式定下的(当然,XmlHttpRequest 不仅可以请求 XML 格式数据)。还有例如Apache,IIS等这些出现较早的应用程序,都是使用 XML 作为配置文件的。在 JSON 崛起之后,XML 被开发者迅速抛弃,现在只有在特殊情况和古老系统中才能见到 XML 的身影了。

JSON 和 XML 的主要差异如下:

JSON XML
可读性
占用大小
扩展性

继续阅读

从文章索引继续。

这篇文章暂未归入核心专题;你仍可从全部文章中找到下一篇相关内容。

选择一条专题路线

Keep reading

相关文章

2026 最新 Windows 桌面应用发布免费代码签名指南:上架 Microsoft Store,使用 MSIX 分发继续阅读 我为什么做 Winsaa继续阅读 计划、执行与反思:把多步任务变成可恢复过程继续阅读 知识库与检索增强:先让答案可追溯继续阅读

Next step

不要停在单篇文章。

沿主专题继续阅读,查看同一问题从概念到实战的完整路径。

选择一条专题路线