加入收藏 | 设为首页 | 会员中心 | 我要投稿 银川站长网 (https://www.0951zz.com/)- 云通信、基础存储、云上网络、机器学习、视觉智能!
当前位置: 首页 > 综合聚焦 > 编程要点 > 语言 > 正文

JSON语法准则

发布时间:2023-05-25 10:47:04 所属栏目:语言 来源:
导读:JSON 的语法与 JavaScript 中的对象很像,在 JSON 中主要使用以下两种方式来表示数据:Object(对象):键/值对(名称/值)的集合,使用花括号{ }定义。在每个键/值对中,以键开头,后跟一个冒号:,最后是值。多个键

JSON 的语法与 JavaScript 中的对象很像,在 JSON 中主要使用以下两种方式来表示数据:

Object(对象):键/值对(名称/值)的集合,使用花括号{ }定义。在每个键/值对中,以键开头,后跟一个冒号:,最后是值。多个键/值对之间使用逗号,分隔,例如{"name":"C语言中文网","url":"http://c.biancheng.net"};

Array(数组):值的有序集合,使用方括号[ ]定义,数组中每个值之间使用逗号,进行分隔。

下面展示了一个简单的 JSON 数据:

{

"Name":"C语言中文网",

"Url":"http://c.biancheng.net/",

"Tutorial":"JSON",

"Article":[

"JSON 是什么?",

"JSONP 是什么?",

"JSON 语法规则"

]

}

注意:所有 JSON 数据需要包裹在一个花括号中,类似于 JavaScript 中的对象。

JSON 中的键

JSON 数据是以键/值对(名称/值)的形式书写的,键表示数据的名称,需要以字符串的形式定义(在双引号中定义),后面紧跟一个冒号,最后是值,如下例所示:

"name":"C语言中文网"

类似于 JavaScript 对象中的:

name:"C语言中文网"

JSON 中的值

JSON 中的值可以是以下数据类型:

数字(整数或浮点数);

字符串(需要在双引号中定义);

布尔值(true 或 false);

数组(在方括号中定义);

对象(在花括号中定义);

null(空)。

另外,在 JSON 中,不同的键/值对之间需要使用逗号进行分隔,如下例所示:

{

"number":123,

"float":3.14,

"string":"C语言中文网",

"bool":true,

"array":[

"employees",

{"name":"peter", "age": 18},

{"name":"Anna", "age": 16}

],

"object":{

"name":"C语言中文网",

"url":"http://c.biancheng.net/"

}

}

在使用 JSON 时,有以下几点需要注意:

JSON 是一段包裹在花括号中的数据,数据由若干键/值对组成;

键和值之间使用冒号分隔;

不同的键/值对之间使用逗号分隔;

键需要以字符串的形式定义(即使用双引号包裹,注意:不能使用单引号);

值可以是数字、字符串、布尔值、数组、对象、null;

键必须是唯一的,不能重复,否则后定义的键/值对会覆盖前面定义的键/值对;

JSON 中不可以使用八进制或十六进制表示数字。

JSON 与 JavaScript 对象的区别

粗略的看起来,您可能觉得 JSON 就是一个 JavaScript 的对象,但其实不是这样的,JSON 与 JavaScript 对象之间还是有区别的。

首先,JSON 是一种数据交换格式,可以跨语言、跨平台使用,它只是与 JavaScript 有些渊源,并不是 JavaScript 的一部分。

就语法而言,JSON 与 JavaScript 最主要的区别就是,JSON 中每个键都必须是一个字符串,而 JavaScript 对象则没有这个限制,如下所示:

// JavaScript 中的对象

{

   foo: "bar"

}

// JSON

{

   "foo": "bar"

}

另外,在 JavaScript 对象中,您既可以使用双引号也可以使用单引号,但在 JSON 中只能使用双引号。还有就是 JSON 中没有日期类型,也不能定义注释,所以您只能通过日期的字符串(例如:1970-01-01)或者时间戳(例如:1632366361)来表示日期。

(编辑:银川站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!