JSON (JavaScript Object Notation) is a lightweight data-interchange format. It is easy for humans to read and write. It is easy for machines to parse and generate. It is based on a subset of the JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999. JSON is a text format that is completely language independent but uses conventions that are familiar to programmers of the C-family of languages, including C, C++, C#, Java, JavaScript, Perl, Python, and many others. These properties make JSON an ideal data-interchange language.
译:
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。 人类很容易读写。 机器很容易解析和生成。 它基于JavaScript编程语言的一个子集,标准ECMA-262第3版 - 1999年12月.JSON是一种完全独立于语言的文本格式,但使用C语言系列程序员熟悉的约定,包括C语言 ,C ++,C#,Java,JavaScript,Perl,Python等等。 这些属性使JSON成为理想的数据交换语言。
 
JSON is built on two structures:
* A collection of name/value pairs. In various languages, this is realized as an object, record, struct, dictionary, hash table, keyed list, or associative array.
* An ordered list of values. In most languages, this is realized as an array, vector, list, or sequence.
译:
JSON基于两种结构:
名称/值对的集合。 在各种语言中,这被实现为对象,记录,结构,字典,散列表,键控列表或关联数组。
有序的值列表。 在大多数语言中,这被实现为数组,向量,列表或序列。
 
These are universal data structures. Virtually all modern programming languages support them in one form or another. It makes sense that a data format that is interchangeable with programming languages also be based on these structures.
译:
这些是通用数据结构。 实际上,所有现代编程语言都以某种形式支持它们。 有意义的是,可与编程语言互换的数据格式也基于这些结构。
 
 
In JSON, they take on these forms:
 
1.
An object is an unordered set of name/value pairs. An object begins with { (left brace) and ends with } (right brace). Each name is followed by : (colon) and the name/value pairs are separated by , (comma).
译:
在JSON中,他们采用以下形式:
 
对象是一组无序的名称/值对。 对象以{(左括号)开头,以}结尾(右括号)。 每个名称后跟:(冒号),名称/值对用(逗号)分隔
 
 
总结:用花括号表示对象,名称/值对可以有多个,并用逗号分隔
 
示例:
{ "firstName":"John" , "lastName":"Doe" }
 
一个{}就是一个JSONObject
 
2.
An array is an ordered collection of values. An array begins with [ (left bracket) and ends with ] (right bracket). Values are separated by , (comma).
 
译:
数组是有序的值集合。 数组以[(左括号)开头并以]结尾(右括号)。 值以(逗号)分隔
 
总结:用方括号表示数组,值以逗号分隔
 
示例:
数组可包含多个对象
{
"employees": [
{ "firstName":"John" , "lastName":"Doe" },
{ "firstName":"Anna" , "lastName":"Smith" },
{ "firstName":"Peter" , "lastName":"Jones" }
]
}
 
说明:employees的值是一个数组,数组的元素是3个对象,每个对象是名称/值对,3个对象之间以逗号分隔
 
3.
A value can be a string in double quotes, or a number, or true or false or null, or an object or an array. These structures can be nested.
译:
值可以是双引号中的字符串,数字,或true或false或null,或对象或数组。 这些结构可以嵌套。
 
JSON 值可以是:
  • 数字(整数或浮点数)
  • 字符串(在双引号中)
  • 逻辑值(true 或 false)
  • 数组(在方括号中)
  • 对象(在花括号中)
  • null
  • JSONObject
  • JSONArray
 
4.
A string is a sequence of zero or more Unicode characters, wrapped in double quotes, using backslash escapes. A character is represented as a single character string. A string is very much like a C or Java string.
译:
字符串是零个或多个Unicode字符的序列,用双引号括起来,使用反斜杠转义。 字符表示为单个字符串。 字符串非常类似于C或Java字符串。
 
 
总结:使用反斜杠转义。
 
5.
A number is very much like a C or Java number, except that the octal and hexadecimal formats are not used.
译:
除非不使用八进制和十六进制格式,否则数字非常类似于C或Java编号。
 
 
JSON Vs XML
1.JSON和XML的数据可读性基本相同
2.JSON和XML同样拥有丰富的解析手段
3.JSON相对于XML来讲,数据的体积小
4.JSON与JavaScript的交互更加方便
5.JSON对数据的描述性比XML较差
6.JSON的速度要远远快于XML
 
 
 

JSON语法介绍的更多相关文章

  1. JSON语法五大要素图文介绍

    原文:http://www.jb51.net/article/32398.htm JSON语法是一种轻量级的数据交换格式.易于人阅读和编写.同时也易于机器解析和生成,下面就进行学习研究,希望本文能教会 ...

  2. JSON【介绍、语法、解析JSON】

    什么是JSON JSON:JavaScript Object Notation [JavaScript 对象表示法] JSON 是存储和交换文本信息的语法.类似 XML. JSON采用完全独立于任何程 ...

  3. 最近想学Json,请问大家有没有什么好的Json教程介绍一下?

    最近想学json,请问大家有没有什么好的Json教程介绍一下? 最近学完java的框架了,想了解一下json,可是找不到相关视频,请大家有这方面的Json教程好资料就介绍下啦,最后有网址链接啦. {} ...

  4. JSON语法规则

    JSON 语法规则 JSON 语法是 JavaScript 对象表示法语法的子集. 数据在名称/值对中 数据由逗号分隔 花括号保存对象 方括号保存数组 JSON 名称/值对 JSON 数据的书写格式是 ...

  5. 【重温基础】16.JSON对象介绍

    本文是 重温基础 系列文章的第十六篇. 今日感受:静. 系列目录: [复习资料]ES6/ES7/ES8/ES9资料整理(个人整理) [重温基础]1-14篇 [重温基础]15.JS对象介绍 本章节复习的 ...

  6. Swift翻译之-Swift语法入门 Swift语法介绍

    目录[-] Hello world - Swift 简单赋值 控制流 函数与闭包 对象和类 枚举与结构 协议和扩展 泛型 2014.6.3日,苹果公布最新编程语言Swift,Swift是一种新的编程语 ...

  7. Json.Net系列教程 1.Json.Net介绍及实例

    原文 Json.Net系列教程 1.Json.Net介绍及实例 本系列教程假设读者已经对Json有一定的了解,关于Json在这里不多说.本系列教程希望能对读者开发涉及到Json的.Net项目有一定的帮 ...

  8. 《JAVASCRIPT高级程序设计》JSON语法/解析/序列化

    JSON是一种数据格式,不是一种编程语言. 一.语法 JSON语法可以表示以下三种类型的值:简单值.对象.数组. 1.简单值 最简单的JSON数据值就是简单值: 5 "hello world ...

  9. flex弹性布局语法介绍及使用

    一.语法介绍 Flex布局(弹性布局) ,一种新的布局解决方案 可简单.快速的实现网页布局 目前市面浏览器已全部支持1.指定容器为flex布局 display: flex; Webkit内核的浏览器, ...

随机推荐

  1. 设置更改root密码 连接mysql mysql常用命令

  2. android中YUV转RGB的方法

    在一个外国网站上看到一段YUV转RGB的程序很不错,根据维基上的知识,方法应该是没问题的,自己也用过了,效果没问题. 首先说一下android上preview中每一帧的信息都是YUV420的,或者叫N ...

  3. php过滤字段htmlentities,htmlspecialchars,strip_tags

    1.strip_tags:过滤html标签比如<a> <html> <script> 如: $str = '<a href="test.html&q ...

  4. 自动换行后缩进怎么做(CSS)?(可用于 Li y 元素的排版)

    <style type="text/css">li{ width:100px; border:1px solid #ccc; padding-left:25px; te ...

  5. BarTender复合条形码中的分隔符模式详解

    在BarTender 10.1中,支持使用BarTender分隔符模式的复合条形码符号体系包括GS1 Composite和GS1 DataBar (RSS).本文小编给大家详细讲解BarTender分 ...

  6. Spring3+mybatis3在多数据源情况下找不到数据库驱动的问题

    解决问题的过程如下: 1.遇到问题和一般的解决方法和下面这个帖子的一样: http://www.oschina.net/question/188964_32305 2.我在按照1的做法配置了以后,依然 ...

  7. Synycovery 7.18f 一个优秀的同步软件

    Serial Key Name: Vdown RG Code: MCKOFA7MNGUQY7954

  8. 源码分析七(java.lang包之IllegalArgumentException类)

    一:IllegalArgumentException非法参数类,这个类继承父类RuntimeException public class IllegalArgumentException extend ...

  9. PHP框架 Yii framework 用yiic命令时提示“php.exe”不是内部或外部命令

    解决方案 yii/framework/yiic.bat,修改 if "%PHP_COMMAND%" == "" set PHP_COMMAND=php.exei ...

  10. Docker容器的生命周期管理

    https://blog.csdn.net/u010278923/article/details/78751306