内容简介:作为一名开发人员,我们时常跟JSON打交道,但对于JSON却有这不少的疑惑,但平常也就是停留在使用的角度上。今天我们就来走进JSON。 我们首先引入两个问题,这两个问题将帮助我们理解JSON。第一个问题的答案就隐藏在JSON的名字当中,JSON: JavaScript Object Notation. 我们重点关注Notation这个词,前两个词我们很熟悉。
作为一名开发人员,我们时常跟JSON打交道,但对于JSON却有这不少的疑惑,但平常也就是停留在使用的角度上。今天我们就来走进JSON。 我们首先引入两个问题,这两个问题将帮助我们理解JSON。
- 什么是JSON?
- 为什么需要JSON或者JSON能帮助我们做什么?
第一个问题的答案就隐藏在JSON的名字当中,JSON: JavaScript Object Notation. 我们重点关注Notation这个词,前两个词我们很熟悉。
Notation: 符号,记号,谱号。 我们是否可以将JSON理解为JavaScript对象的符号形式呢? 带着这个疑问,我查看了JSON的官网:
请注意标红的部分,这是关键。我们在强调一遍,一种轻量级的数据交换格式。
根据以上的求索,我们可以对JSON做出以下论断:
- JSON是JavaScript对象的表示形式
- JSON是一种轻量级的数据交换形式
从JSON的官网可以看到JSON有两种结构:
- “名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)
- 值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array)
"名称/值"对的集合,好怪的说法啊,JSON脱胎于JavaScript,简单的说,JSON就是JavaScript的对象和数组。
那么JSON是JavaScript的对象吗?并不是,说JSON是JavaScript的对象和数组只是为了方便理解JSON而已,JavaScript Object Notation, JavaScript Object Notation,我们强调两遍,Notaiton在牛津字典的解释是 a system of signs or symbols used to represent information---即一种代表某种信息的符号。叫 JavaScript Object Notation的原因也许是JSON的作者道格拉斯同志在设计JSON时参考了JavaScript Object的对象语法而已。
JSON的形式:
- 对象是一个无序的“‘名称/值’对”集合。一个对象以 {左括号 开始, }右括号 结束。每个“名称”后跟一个 :冒号 ;“‘名称/值’ 对”之间使用 ,逗号 分隔。
- 数组是值(value)的有序集合。一个数组以 [左中括号 开始, ]右中括号 结束。值之间使用 ,逗号 分隔。
- 值(value)可以是双引号括起来的字符串(string)、数值(number)、true、false、 null、对象(object)或者数组(array)。这些结构可以嵌套。
接下来,我们从数据交换形式的角度来解释JSON,数据交换是谁和谁做交换呢? web客户端和服务端吧。在前后端分离的大势,JSON是前段和后端的一种数据交换形式,不仅仅是前后端的一种数据交换形式,还是系统之间进行数据交换的一种形式。
为什么需要JSON呢?
那就要请出XML同志了,在没有JSON同志之前,都使用XML进行数据交换,但是XML并不简单,有着各种各样的数据约束,越搞越复杂,我们希望数据交换形式尽可能的简单一些,不想再去了解那些让人头痛的那一大堆的复杂规范。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Servlet&JSP学习笔记
林信良 / 清华大学出版社 / 2010-4 / 48.00元
《Servlet&JSP学习笔记》以“在线书签”项目贯穿全书,随着每一章的讲述都在适当的时候将 Servlet & JSP技术应用于“在线书签”程序之中,并作适当修改,以了解完整的应用程序构建方法。《Servlet&JSP学习笔记》内容包括简单的Web应用程序,开发简单的Servlet & JSP合理管理,JSP的使用,整合数据库等相关内容,《Servlet&JSP学习笔记》适合Servlet ......一起来看看 《Servlet&JSP学习笔记》 这本书的介绍吧!