[转]介绍 JSON

news/2024/7/7 8:10:05

介绍 JSON


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

object
{}
{ members }
members
string : value
members , string : value
array
[]
[ elements ]
elements
value
elements , value
value
string
number
object
array
true
false
null
string
""
" chars "
chars
char
chars char
char
any-Unicode-except- " -or- / -or-control
/"
//
//
/b
/f
/n
/r
/t
/u four-hex-digits
number
int
int frac
int exp
int frac exp
int
digit
digit1-9 digits
- digit
- digit1-9 digits
frac
. digits
exp
e digits
digits
digit
digits digit
e
e
e+
e-
E
E+
E-

JSON建构于两种结构:

  • “名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。
  • 值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array)。

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

JSON具有以下这些形式:

  • 对象是一个无序的“‘名称/值’对”集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间使用“,”(逗号)分隔。
  • 数组是值(value)的有序集合。一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间使用“,”(逗号)分隔。
  • 值(value)可以是双引号括起来的字符串(string)、数值(number)、 ture、false、 null、对象(object)或者数组(array)。这些结构可以嵌套。
  • 字符串(string)是由双引号包围的任意数量Unicode字符的集合,使用反斜线转义。一个字符(character)即一个单独的字符串(character string)。

除去一些编码细节,以下描述了完整的语言。

http://www.crockford.com/JSON/img/oav.gif

字符串(string)与C或者Java的字符串非常相似。除去未曾使用的八进制与十六进制格式,数值(number)也与C或者Java的数值非常相似。

http://www.crockford.com/JSON/img/sn.gif

空白可以加入到任何符号之间。

  • JSON in ActionScript.
  • JSON in C.
  • JSON in C#, and Jayrock.
  • JSON in Cold Fusion.
  • JSON in Delphi.
  • JSON in E.
  • JSON in Java.
  • JSON in JavaScript.
  • JSON in ML and Ruby.
  • JSON in Objective CAML.
  • JSON in Perl.
  • JSON in PHP: JSON-PHP and PHP-JSON.
  • JSON in Python.
  • JSON in Rebol.
  • JSON in Ruby.
  • JSON in Chicken Scheme.
  • JSON in Squeak.
  • JSON-RPC.
  • JSON-RPC-Page.
  • JSON-RPC-JAVA ORB.
  • The Fat-free Alternative to XML.
  • An example of JSON-encoded messages.
  • The JSON License.
  • The JSON Group on Yahoo!

json@JSON.org

原版本、 中文版勘误 | blog |

from: http://blog.patterns.cn/json/





http://www.niftyadmin.cn/n/3652400.html

相关文章

整数进制转换、IP地址必知必会!!!!

整数进制转换、IP地址必知必会整数进制转换数制基数位权转换IP地址必知必会IP地址简介IP地址的组成子掩网码IP地址段分类公有地址与私有地址有效主机容量的计算整数进制转换 数制 数制也称计数制,是用一组固定的符号和统一的规则来表示数值的方法。人们通常采用的…

[转]基于反向代理的Web缓存加速 ——可缓存的CMS系统设计

基于反向代理的Web缓存加速 ——可缓存的CMS系统设计作者: 车东 Email: chedongATbigfoot.com/chedongATchedong.com写于:2003/05 最后更新: 02/22/2006 14:42:55内容摘要:对于一个日访问量达到百万级的网站来说,速…

计算机网络原理应用必知必会——网络基础知识

网络基础知识信号与传输介质信号信号分类信号的区别:传输介质有线传输介质无线传输介质信号与传输介质 信号 信号是数据的表现形式,是运载消息的工具,是消息的载体。 信号分类 分为模拟信号和数字信号 模拟信号 模拟信号是指用连续变化的…

[转]直接用php创建word文档

直接用php创建word文档 作者&#xff1a;axgle <axgleyahoo.com.cn> 首先用$word->start()表示要生成word文件了。 然后你可以输出任何的HTML代码&#xff0c;不 论是从文件读过来再写到这里&#xff0c; 还是直接在这里输出HTML&#xff0c;都没有关系。 等你输出完毕…

计算机网络知识点————交换机

交换机的基本知识点一、数据链路层数据链路层的作用以太网帧格式二、以太网交换机交换机工作原理交换机以太网接口的工作模式三、交换机基本配置配置前的连接交换机命令一、数据链路层 数据链路层的作用 &#xff08;1&#xff09;数据链路的建立、维护与拆除 &#xff08;2&…

[转]SnowDB文件索引数据库系统

帖子来源这里&#xff1a;http://perlchina.sun126.com/cgi-bin/ccb/topic_view.cgi?forum6&article_id0006050531225335&publishtime_id0006050531225335&page15&floor0该数据库实现代码在这里&#xff1a;http://perlchina.sun126.com/noncgi/usr/affix/050…

网络层知识点及常用的Ping命令,理解归纳整理。

知识点网络层的功能IP数据包格式各段含义ICMP协议window系统中ping命令常用选项ARP协议工作原理windows系统中ARP命令网络层的功能 1.定义了基于IP协议的逻辑地址 2.连接不同的媒介类型 3.选择数据通过网络的最佳路径 IP数据包格式 各段含义 版本&#xff08;Version&…

[转]解决 textdb 核心问题:超负载与稳定性

Ofstar------解决 textdb 核心问题:超负载与稳定性原文地址&#xff1a;http://www.ofstar.net/read.php?fid2&tid92先申明.以下内容完全由fenyu和王学集研究成果(希望我们的菲薄之力能给php---texdb带来新的理念).下面主要讲解ofstar----textdb实现数据的负载能力.与稳定…