JSON是什么?

149 阅读3分钟

​携手创作,共同成长!这是我参与「掘金日新计划·8 月更文挑战」的第23天,点击查看活动详情

JSON 被翻译为“JavaScript 对象简谱”或“JavaScript 对象表示法”,是一种比较轻量级的基于文本开放的数据交换格式。 JSON 在 Web 开发领域有着举足轻重的地位,如果您想在Java或者Web 开发领域大展身手的话,就必须了解和熟悉使用JSON。

数据交换指的是两个设备之间建立连接、并互相传递数据的过程。

尽管 JSON 的名称中包含“JavaScript”,但它并不是只能在 JavaScript 中使用,大多数编程语言都支持JSON例如 JavaScript、Java、PHP、Python、C++ 等。

什么是 JSON?

JSON 是一种纯字符串形式的数据,它本身不提供任何方法, 非常适合在网络中进行传输。JavaScript、Java、PHP、Python、C++ 等编程语言中都内置了处理 JSON 数据的方法。JSON 是基于 JavaScript的一个子集,是一种开放轻量级的数据交换格式,采用独立于编程语言的文本格式来存储和表示数据,易于程序员阅读与编写,同时也易于计算机解析和生成,通常用于在 Web 客户端与 Web 服务器端之间传递数据。

在 JSON 中,使用以下两种方式来表示数据:

  • Object(对象):键/值对(名称/值)的集合,使用花括号{ }定义。在每个键/值对中,以键开头,后跟一个冒号:,最后是值。多个键/值对之间使用逗号,分隔,例如{"name":"baidu","url":"http://www.baidu.com"}
  • Array(数组):值的有序集合,使用方括号[ ]定义,数组中每个值之间使用逗号,进行分隔。

JSON 发展史

2000 年初,Douglas Crockford发明了 JSON,并从 2001 年开始推广使用。同年4月,位于旧金山湾区某车库的一台计算机发出了首个 JSON 格式的数据,这是计算机历史上的重要时刻。

道格拉斯·克罗克福特

2005-2006 年,JSON 正式成为主流的数据格式,雅虎、谷歌等知名网站开始广泛使用 JSON 格式。

2013 年,ECMA International制定了 JSON 的语法标准——ECMA-404

经过20年左右的发展,JSON 已经替代了 XML,成为了Web开发中首选的数据交换格式。

为什么要使用 JSON?

我们为什么要使用 JSON,而不是 XML 呢?JSON 并不是唯一能够实现在互联网中传输数据的方式,除此之外还有一种XML格式。JSON和 XM 能够执行许多相同的任务,

之所以使用JSON,最主要的原因是JavaScript。JavaScript Web开发中不可或缺的技术,而JSON是基于 JavaScript的子集,JavaScript 默认就支持 JSON

另一个原因是JSON比 XML的可读性更高,而且JSON更加简洁,更容易理解。

与XML相比,JSON 具有以下优点:

  • 结构简单、紧凑:
  • 更快:JSON 的解析速度比 XML 更快存储同样的数据,JSON 格式所占的存储空间更小;
  • 可读性高:JSON 的结构有利于程序员阅读。

JSON 的不足

  • 没有注释:在 JSON 中无法添加注释;
  • 冗长:虽然 JSON 比 XML 更加简洁,但它并不是最简洁的数据交换格式,对于数据量庞大或用途特殊的服务,您需要使用更加高效的数据格式。
  • 只有一种数字类型:JSON 中只支持 IEEE-754 双精度浮点格式
  • 没有日期类型:在 JSON 中您只能通过日期的字符串(例如:1970-01-01)

JSON 应该如何存储?

JSON 数据可以存储在 .json 格式的文件中,也可以将 JSON 数据以字符串的形式存储在数据库、Cookie、Session 中。 要使用存储好的 JSON 数据也非常简单,不同的编程语言中提供了不同的方法来检索和解析 JSON 数据,例如 JavaScript 中的 JSON.parse() 和 JSON.stringify()