关于 JSON 的有趣事实


JSON 代表 JavaScript 对象表示法,基本上,JSON 经常与 JavaScript 一起使用,它最初旨在成为 JavaScript 编程语言的一个子集。但是,JSON 是一种与语言无关的数据格式。在本文中,我们将学习有关 JSON 以及它们的有趣事实和示例。

JSON 简介

当数据可以以简单格式传输和存储时,称为 JSON 或 JavaScript 对象表示法。JSON 中可以找到数组、对象、名称和值对以及其他数据类型。该格式使用引号、括号、圆括号、分号和冒号作为标点符号。在 JSON 中,数据表示为名称-值对,类似于 JavaScript 对象属性。JSON 是一种轻量级的数据传输方式。而且,这种语言被描述为基于原型的、多范式的和动态的。每当从服务器向网页发送数据时,都需要使用 JSON。

JSON 事实

在这里,我们将讨论关于 JSON 的许多有趣事实,并附带解释和示例。以下是关于 JSON 的一些有趣事实:

  • 最初,JSON 被认为是 JavaScript 编程语言的一个子集。(尤其是 1999 年 12 月发布的标准 ECMA-262,第三版)。

  • JSON 是从 JavaScript 生成的,现在许多编程语言都有可用于调用和解释 JSON 格式数据的代码。它是一种与语言无关的数据格式。JSON 的公认 Internet 媒体类型为 application/JSON。.json 扩展名用于 JSON 文件名。

  • Douglas Crockford 是第一个定义和推广 JSON 格式的人。2001 年 4 月,Douglas Crockford 和 Chip Morningstar 发送了第一条 JSON 消息。

  • Crockford 在 JSON 许可证中插入了一句话,声明“软件应用于善,而非恶。”另一方面,由于自由软件和开源软件通常意味着对使用目的没有限制,因此此部分导致 JSON 许可证与其他开源许可证的许可证兼容性问题。

  • JSON 格式的语法类似于 JavaScript 对象创建代码的语法。这使得 JavaScript 程序可以轻松地将 JSON 数据转换为 JavaScript 对象。JSON 数据可被任何编程语言使用,并且由于它仅以文本格式存在,因此易于在机器之间传输。

  • 在 Communities.com 上有一个名为 Cartoon Orbit 的儿童数字资产交易游戏(州联合创始人之前都曾在该公司工作),用于 Cartoon Network,它使用浏览器端插件和自定义消息系统来更改 DHTML 组件。这是 JSON 库的初始阶段。

  • 如果 JSON 文件存在语法问题,则请求通常会静默失败。因此,出于这个原因,不应经常手动编辑 JSON 数据。数据交换格式 JSON 比 JavaScript 的对象文字表示法具有更高的语法要求。例如,JSON 表示中的所有字符串,无论它们是值还是属性,都需要用双引号括起来

  • JSON 字符串由用户浏览器中运行的 JavaScript 解密,然后在页面上显示产品数据。

使用 JSON

正如我们所看到的,JSON 是 JavaScript 编程语言中的一种对象类型,它以字符串文字的形式存储数据,并以 .json 扩展名结尾。JSON 的对象以键值对的形式存储数据,这些数据包含在花括号中,就像 JavaScript 的对象一样。让我们看一个例子来更好地了解 JSON 代码:

{
   "key1" : "pair1",
   "key2" : "pair2",
   "key3" : {
      "sub-key1" : "opp_value",
      "sub_key2" : "opp_value",
   },
   "key4" : {
      "sub-key1" : "opp_value",
      "sub_key2" : "opp_value",
   },
   "key5" : "pair5",
}

在上面的 JSON 代码中,我们可以看到有五个键值对,其中键以简单字符串的形式存在,而值可以是字符串或其他对象,可以是任何东西,例如数组、字符串等。所有键值对都用逗号分隔,并包含在花括号中。

任何数据都可以以这种方式存储,并且可以轻松地以这种格式传递或共享。

在 JSON 中存储数组

我们已经看到了编写 JSON 对象的简单代码,现在让我们看看用户如何在 JSON 对象中存储数组:

{
   "key1" : "pair1",
   "key2" : "pair2",
   "key3" : {
      "sub-key1" : "opp_value",
      "sub_key2" : "opp_value",
   },
   "key4" : [
      "sub-key1" : "opp_value",
      "sub_key2" : "opp_value", object1, object2
   ],
   "key5" : "pair5",
}

在上面的代码中,我们可以看到在第四个键中存储了一个数组而不是另一个对象,并且 json 支持这一点。

JSON 和 XML 之间的区别

JSON 和 XML 都用于存储数据并共享或传输它,并且两者在各自的领域都非常出色,让我们看看一些使两者之间产生差异的要点:

  • 与 XML 相比,JSON 非常容易学习,因为它并不直观。

  • 由于 JSON 只是一个包含键值对形式数据的简单字符串,因此可以轻松读取和写入 javascript 对象,另一方面,XML 难以读取和写入

  • JSON 面向数据并以这种方式工作,而 XML 面向文档。

  • JSON 不安全,因为它只是面向数据的,而 XML 与 JSON 相比相当安全。

  • XML 不支持数组,而 JSON 提供了支持数组的功能。

XML 和 JSON 之间的相似之处

我们已经看到 JSON 和 XML 之间的一些差异,现在让我们来看看两者之间的一些共同点:

  • 由于它们都包含人类可读的文本,因此 XML 和 JSON 都是自描述的

  • JSON 和 XML 都支持分层组织。当我们谈论层次结构时,我们的意思是包含在值内的值。

  • 作为数据交换格式,JSON 和 XML 受多种编程语言的支持。

  • 两种格式都可以快速轻松地处理。

  • 检索:两种格式的数据都可以使用 HTTP 请求检索。可以使用 GET、PUT 和 POST 方法检索数据。

结论

在本文中,我们学习了有关 JSON 以及它们的有趣事实和示例。JSON 代表 JavaScript 对象表示法,基本上,JSON 经常与 JavaScript 一起使用,它最初旨在成为 JavaScript 编程语言的一个子集。JSON 中可以找到数组、对象、名称和值对以及其他数据类型。该格式使用引号、括号、圆括号、分号和冒号作为标点符号。

更新于: 2023 年 3 月 2 日

541 次查看

开启你的 职业生涯

通过完成课程获得认证

开始
广告

© . All rights reserved.