JSON介绍

简介: JSON介绍

JSON(JavaScript Object Notation, JS对象简谱)是一种轻量级的数据交换格式。它基于 ECMAScript(European Computer Manufacturers Association, 欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。
JSON 语法规则
JSON是一个标记符的序列。这套标记符包含六个构造字符、字符串、数字和三个字面值。
JSON是一个序列化的对象或数组。

  1. 六个构造字符:

begin-array = ws %x5B ws ; [ 左方括号
begin-object = ws %x7B ws ; { 左大括号
end-array = ws %x5D ws ; ] 右方括号
end-object = ws %x7D ws ; } 右大括号
name-separator = ws %x3A ws ; : 冒号
value-separator = ws %x2C ws ; , 逗号

  1. 在这六个构造字符的前或后允许存在无意义的空白符(ws):

ws = *(%x20 /; 空间
%x09 /; 水平标签
%x0A /; 换行或换行
%x0D); 回程
3.JSON的值:
3.1 JSON的构成: ws 值 ws [1]
3.2值可以是对象、数组、数字、字符串或者三个字面值(false、null、true)中的一个。值中的字面值中的英文必须使用小写。
3.2.1对象由花括号括起来的逗号分割的成员构成,成员是字符串键和上文所述的值由逗号分割的键值对组成,如:
1

{"name": "John Doe", "age": 18, "address": {"country" : "china", "zip-code": "10000"}}

JSON中的对象可以包含多个键值对,并且有数组结构,该语言正是一次实现过程内容的描述。 [6]
3.2.2数组是由方括号括起来的一组值构成,如:
1
[3, 1, 4, 1, 5, 9, 2, 6]
3.2.3 字符串与C或者Java的字符串非常相似。字符串是由双引号包围的任意数量Unicode字符的集合,使用反斜线转义。一个字符(character)即一个单独的字符串(character string)。
3.2.4数字也与C或者Java的数值非常相似。除去未曾使用的八进制与十六进制格式。除去一些编码细节。 [2]
一些合法的JSON的实例:
1
{"a": 1, "b": [1, 2, 3]}
1
[1, 2, "3", {"a": 4}]
1
3.14
1
"plain_text"

目录
相关文章
|
3月前
|
JSON 数据格式 C++
JSON(C++)
JSON(C++)
36 1
|
4月前
|
JSON JavaScript 前端开发
JSON
JSON
30 0
|
JSON Java 数据格式
处理json 和HttpMessageConverterT
处理json 和HttpMessageConverterT
81 0
|
数据格式 JSON JavaScript
JSON是什么?
JSON 全称“JavaScript Object Notation”,译为“JavaScript 对象简谱”或“JavaScript 对象表示法”,是一种轻量级的、基于文本的、开放的数据交换格式。JSON 在 Web 开发领域有着举足轻重的地位,如果您想在 Web 开发领域大展身手的话,就必须了解 JSON。
|
JSON 数据格式
json的一些小理解
个人学习总结
82 0
|
XML Web App开发 JSON
JSON 简单了解
JSON 简单了解
223 0
JSON 简单了解
|
XML 存储 JSON
JSON介绍
JSON介绍
280 0
JSON介绍
|
JSON fastjson 数据格式
json是什么,看了之后我才恍然大悟(二)
3. 返回一个List集合 4. 返回一个时间 (重要) 5. FastJson
json是什么,看了之后我才恍然大悟(二)
|
XML JSON JavaScript
JSon 使用 之怪现象[已解决]
最近 学extjs 结合 json 时候 遇到一个 非常困扰的问题
179 0
JSon 使用 之怪现象[已解决]