在平常的系统开发过程当中,咱们会被架构师要求使用这样或那样的技术,在入行最初阶段咱们会由于项目进展压力,无暇思考使用该技术的缘由,而是一门心思的学习上手使用该技术,我也不例外的在这群人里面。如今手上已经没有正在进行的项目了,有了一块相对宽松的时间,能够好好想一想咱们为何要使用这些技术了。今天先来讲说JSON。数组
JSON的英文全称是JavaScript Object Notation,是JavaScript的一个子集,从名字中咱们也能够体会到是让JavaScript具备了面向对象的能力,把咱们使用原生JavaScript得到的属性值,组合造成了对象。对于咱们开发普通的Web应用来讲,不管是服务器端仍是客户端解析XML文件或生成XML文件,相关的代码会相对复杂,不利于提升开发效率。因此这时咱们可使用JSON来代替XML。服务器
下面使用代码来对比一下XML和JSON的不一样架构
使用XML来表示书籍的集合ide
<books> <book title ="Frankenstein" author="Mary Shelly"/> <book title ="1986" author="George Orwell"/> <book title ="The Sun Also Rises" author="Ernest Hemingway"/> <book title ="Pride and Prejudice" author="Jane Austen"/> </books>
使用JSON来表示书籍的集合学习
{ "books":[ {"title":"Frankenstein","author":"Mary Shelly"}, {"title":"1986","author":"George Orwell"}, {"title":"The Sun Also Rises","author":"Ernest Hemingway"}, {"title":"Pride and Predudice","author":"Jane Austen"} ]}
JSON的基本结构是使用“{}”来包住对象,该对象包含键和值以冒号分隔,键值对之间以逗号分界,字符串要被包在双引号("")中,而且对象的键名字始终都是一个字符串,属性值可使任何JSON支持的数据类型,包括字符串、其余对象类型、数字以及布尔类型(true或者false)、一个指定的空值和数组。JSON的数组被“[]”包住,数组元素的类型能够是任何JSON数据类型(包括对象和数组),数组元素之间以“,”进行分隔。spa