关于 JSON 的有趣事实

javascriptjsonweb developmentfront end technology

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 的儿童数字资产交易游戏(State 的联合创始人都曾在该公司工作过),因为 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 中找到。格式使用引号、括号、圆括号、分号和冒号作为标点符号。


相关文章