JSON (Javascript对象表示法)是一种人类可读的数据格式,您可以在简单的文本编辑器中创建,不需要复杂的工具。它被设计为在Javascript中易于处理,但是其他编程语言也可以很容易地解释它。

JSON结构

数据类型

JSON可以以六种基本数据类型保存信息:

  • 细绳: 0个或多个用引号括起来的Unicode字符。
  • 数量:整个或十进制数。它可以签名,可以包含分数部分,并且可以使用指数e表示法。
  • 布尔: True或false值。它们用“对”或“错”来表示。
  • :空价值。这由null字指定。
  • 对象:键值对的集合。对象用花括号声明。键和值用冒号分隔,键-值对用逗号分隔。对象中的每个键都必须是唯一的。
  • 数组: 0个或多个元素的有序列表。它可以包含任何数据类型的值,包括空值、对象和副本。数组用方括号声明,元素用逗号分隔。

数据配对

JSON建立在成对创建数据的概念上。一对的第一部分称为“键”,并且一对的第二部分称为“值”。JSON数据对通常被称为“键值对”。

JSON键值对中的键必须是包含由引号包围的一个或多个Unicode字符的字符串。您应该避免非信息性字符,例如表情符号,不可打印的字符和额外的空白。

JSON键值对中的值可以是任何有效的JSON数据类型。如果值是字符串,则允许非打印字符或特殊字符的反斜杠转义。

数据作为对象

所有JSON数据必须是JSON对象的一部分。JSON文件必须仅包含一个JSON对象。JSON对象类似于JavaScript对象,除了它们不能包含一些JavaScript的复杂数据结构,如功能。

空格仅在字符串中很重要。您可以根据您的围绕数组元素,键值对,对象括号或其他数据添加尽可能多的空格。

JSON不允许注释并不能在对象中保持二进制数据。

JSON文件示例

此示例显示了具有包含每种类型的有效值的单个根对象和键值对的有效JSON文件:Number,String,True,False,Null,Array和Object。

{“key1”:1,“key2”:“a”,“key3”:true,“key4”:false,“key5”:null,“key6”:[1,2,3],“key7”:{“Key8” : 2, “Key9” : “b c” } }

处理JSON文件

解释JSON数据

当在Javascript程序中使用JSON时,JSON对象总是被读入字符串。为了从字符串中获取键和值,一个名为解析器的程序将JSON拆分为键和值,然后将它们转换为Javascript对象。

您可以用任何您想要的编程语言编写JSON解析器,但JSON是如此流行和广泛使用,您不必白费唇舌。每一种流行的编程语言都至少有一个维护良好的JSON解析器。

一些编程语言,如C ++和Java,有十几个可靠的解析器可供选择。JSON网站json.org官方json.org保留了一个更新的列表,其中包含了超过50多个编程语言编写的数百个可靠的解析器。

何时使用json

JSON是web应用程序中交付数据的常用方法。它可以在Javascript web脚本和复杂的数据传递系统(如REST api)中保存数据。

由于JSON无法容纳二进制数据,因此它不能包含许多常见的数据类型,如音频,视频或图像等。如果要在JSON文件中包含对这些数据的引用,请使用字符串指定超链接地址或文件路径。

结论

JSON是一种简单而可靠的数据格式,通常在Javascript程序中使用,在一般数据交换和建模中也有一席之地。它的简单性有助于它的流行,但它并不是对所有类型的数据都有用,而且大型JSON文件可能会变得难以处理。

参加我们的编程纳米迪尔格的介绍188金宝搏安不安全今天要了解有关JSON和其他编程概念的更多信息!

开始学习