0.说明

JSON(JavaScript Object Notation)
是一种轻量级的数据交换格式。
易于人阅读和编写。
同时也易于机器解析和生成。
它是基于JavaScript Programming Language,
Standard ECMA-262 3rd Edition - December 1999的一个子集。
JSON采用完全独立于语言的文本格式,
但是也使用了类似于C语言家族的习惯
(包括C, C++, C#, Java, JavaScript, Perl, Python等)。
这些特性使JSON成为理想的数据交换语言。

JSON建构于两种结构:

1."名称/值"对的集合(A collection of name/value pairs)

不同的语言中,
它被理解为对象(object),纪录(record),结构(struct),
字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。

2.值的有序列表(An ordered list of values)

在大部分语言中,它被理解为数组(array)。
这些都是常见的数据结构。
事实上大部分现代计算机语言都以某种形式支持它们。
这使得一种数据格式在同样基于这些结构的编程语言之间交换成为可能。

JSON具有以下这些形式:

1.对象Object

对象是一个无序的"‘名称/值’对"集合。
一个对象以 {左括号 开始, }右括号 结束。
每个"名称"后跟一个 :冒号 ;
"‘名称/值’ 对"之间使用 ,逗号 分隔。

2.数组Array

数组是值(value)的有序集合。
一个数组以 [左中括号 开始, ]右中括号 结束。值之间使用 ,逗号 分隔。

3.值Value

值(value)可以是双引号括起来的字符串(string)、
数值(number)、true、false、 null、
对象(object)或者数组(array)。
这些结构可以嵌套。

4.字符串String

字符串(string)是由双引号包围的任意数量Unicode字符的集合,使用反斜线转义。
一个字符(character)即一个单独的字符串(character string)。
字符串(string)与C或者Java的字符串非常相似。

5.数值Number

数值(number)也与C或者Java的数值非常相似。
除去未曾使用的八进制与十六进制格式。除去一些编码细节。

6.空白Whitespace

空白可以加入到任何符号之间。 以下描述了完整的语言。

7.名词解释

json
element value
object
array
string
number
"true"
"false"
"null" object
'{' ws '}'
'{' members '}' members
member
member ',' members member
ws string ws ':' element array
'[' ws ']'
'[' elements ']' elements
element
element ',' elements element
ws value ws string
'"' characters '"' characters
""
character characters character
'0020' . '10FFFF' - '"' - '\'
'\' escape escape
'"'
'\'
'/'
'b'
'f'
'n'
'r'
't'
'u' hex hex hex hex hex
digit
'A' . 'F'
'a' . 'f' number
integer fraction exponent integer
digit
onenine digits
'-' digit
'-' onenine digits digits
digit
digit digits digit
'0'
onenine onenine
'1' . '9' fraction
""
'.' digits exponent
""
'E' sign digits
'e' sign digits sign
""
'+'
'-' ws
""
'0020' ws
'000A' ws
'000D' ws
'0009' ws

8.参考文章

介绍 JSONIntroducing JSONECMA-404 The JSON Data Interchange Standard.

【】JSON介绍的更多相关文章

  1. xml与json 介绍

    一.JSON数据格式 1)概念:json是一种网络数据传输格式,有值/对象:{“A”:1,”B”:”2”…}词典:对象的序列:[,,,,,]数组两种数据类型 2)URLWithString 将字符串网 ...

  2. JSON: 介绍、应用

    ylbtech-JSON:  介绍.应用 JSONP(JSON with Padding)是 JSON 的一种“使用模式”,可以让网页从别的域名(网站)那获取资料,即跨域读取数据. 为什么我们从不同的 ...

  3. Json介绍以及解析Json

    首先,介绍一下Json字串,以下Json的介绍引用网上资料. 简单地说,JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以在函数之间轻松地传递这个字符串,或者在异步应 ...

  4. JSON介绍及Android最全面解析方法(Gson、AS自带org.son、Jackson解析)

    前言 今天,我们来介绍一下现今主流的数据交换格式-JSON! 相同作为主流为数据交换格式-XML,假设有兴趣能够阅读我写的XML及其DOM.SAX.PULL解析方法和对照 文件夹 定义 JavaScr ...

  5. Json介绍与Ajax技术

    AJAX   AJAX准备知识:JSON 什么是 JSON ? JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation) JSON 是轻量级的文本数据 ...

  6. 1.4 jQuery方法,JSON介绍

    jQuery方法: jQuery添加元素: append()方法: $("元素").append("追加内容"); prepend()方法: $("元 ...

  7. JSON介绍

    JSONhttp://www.json.org/json-zh.html JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式. 易于人阅读和编写.同时也易于机 ...

  8. iOS开发网络篇—JSON介绍

    一.什么是JSON JSON是一种轻量级的数据格式,一般用于数据交互 服务器返回给客户端的数据,一般都是JSON格式或者XML格式(文件下载除外) JSON的格式很像OC中的字典和数组 {" ...

  9. 安卓Json介绍(转)。

    1.JSON(JavaScript Object Notation) 定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性.业内主流技术为其提供了完整的解决方案(有点类似于正则表达式, ...

随机推荐

  1. mysql 间隙锁专题

    本文研究记录mysql间隙锁,涉及以下情况 唯一索引 非唯一索引 范围更新 等值更新 mysql8 mysql7 RR RC 数据准备 mysql> select * from vodb.tes ...

  2. Vue API 3模板语法 ,指令

    条件# v-if# v-if 指令用于条件性地渲染一块内容.这块内容只会在指令的表达式返回 truthy 值的时候被渲染. v-show# v-show 指令也是用于根据条件展示一块内容.v-show ...

  3. oracle first_value,last_valus

    first_value和last_value 是用来去分析函数窗口中对应列的第一个值和最后一个值的函数. 语法如下: first_value(col [ignore NULLS]) over([PAR ...

  4. CentOS 初体验三: Yum 安装、卸载软件

    一:Yum 简介 Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器.基于RPM包管理,能够从指 ...

  5. 03 - Vue3 UI Framework - 首页

    顶部边栏做完了,接下来开始做官网的首页 返回阅读列表点击 这里 创建视图文件夹 让我们先新建一个 src/views 文件夹,用来存放官网的主要视图 然后在该文件夹下新建两个 vue 文件,作为我们的 ...

  6. 【Python机器学习实战】聚类算法(2)——层次聚类(HAC)和DBSCAN

    层次聚类和DBSCAN 前面说到K-means聚类算法,K-Means聚类是一种分散性聚类算法,本节主要是基于数据结构的聚类算法--层次聚类和基于密度的聚类算法--DBSCAN两种算法. 1.层次聚类 ...

  7. secret_file

    拿到题目例行检查,进入main函数 这个逆向有些复杂,程序首先让我们像dest输入256个字符,我们可以看到关键的strcmp(v15,v17),若相等则执行poppen poppen这个函数有额外的 ...

  8. 【Redis的那些事 · 上篇】Redis的介绍、五种数据结构演示和分布式锁

    Redis是什么 Redis,全称是Remote Dictionary Service,翻译过来就是,远程字典服务. redis属于nosql非关系型数据库.Nosql常见的数据关系,基本上是以key ...

  9. Excel.CurrentWorkbook数据源(Power Query 之 M 语言)

    数据源: 任意超级表 目标: 将超级表中的数据加载到Power Query编辑器中 操作过程: 选取超级表中任意单元格(选取普通表时会自动增加插入超级表的步骤)>数据>来自表格/区域 M公 ...

  10. 如何把整张表格的数据通过form表单的方式传回后台

    开发背景: 前段时间遇到这么一个需求,就是把一整张表格的数据存储在数据库中,之后再渲染在页面中,还可以进行重新编辑. 例如下边的课程表(为了方便,所以都是软件工程). 我也是经过一段时间的思考,才实现 ...