数据交换格式
什么是数据交换格式
数据交换格式,就是服务器端与客户端之间进行数据传输与交换的格式
前端领域、经常提及的两种数据交换格式分别是XML和JSON。其中XML用的非常少、所以、我们重点要学习的数据交换格式就是JSON
什么是XML
XML的英文全称是 EXtensible Makup Language、即可扩展标记语言。因此、XML和HTML类似、也是一种标记语言
XML和HTML的区别
XML和HTML虽然都是标记语言、但是、他们两者之间没有任何的关系
HTML被设计用来描述网页上的内容、是网页内容的载体
XML被设计用来传输和存储数据、是数据的载体
XML的缺点
XML格式臃肿、和数据无关的代码多、体积大、传输效率低
在JavaScript中解析 XML 比较麻烦
JSON
什么是JSON
概念:JSON的英文全称是 JavaScript Object Notation,即“JavaScript 对象表示法”。简单来讲,JSON就是JavaScript对象和数组的字符串表示法,它使用文本表示一个JS对象或数组的信息,因此,JSON的本质是字符串
作用:JSON是一种轻量级的文本数据交换格式、在作用上类似于XML、专门用于存储和传输数据、但是JSON比XML 更小、更快、更易解析
现状:JSON是在2001年开始被推广和使用的数据格式、到现今为止、JSON已经成为了主流的数据交换格式
JSON的两种结构
JSON就是用字符串来表示JavaScript的对象和数组、所以、JSON中包含了对象和数组两种结构、通过这两种结构的相互嵌套、可以表示各种复杂的数据结构
对象结构:对象结构在JSON中表示为{ }括起来的内容。数据结构为{key:value,key:value....}的键值对结构。其中,key必须是使用英文的双引号包裹的字符串,value的数据类型可以是数字、字符串、布尔值、null、数组、对象6种类型
数组结构:数组结构在JSON中表示为[ ]括起来的内容。数据结构为["java"、"JavaScript"、30、true.....]
数组中数据的类型可以是数字、字符串、布尔值、null、数组、对象6种类型
JSON语法注意事项
1.属性名必须使用双引号包裹
2.字符串类型的值必须使用双引号包裹
3.JSON中不允许使用单引号表示字符串
4.JSON中不能写注释
5.JSON的最外层必须是对象或数组格式
6.不能使用 undefined 或函数作为JSON的值
JSON的作用:在计算机与网络之间存储和传输数据
JSON的本质:用字符串来表示JavaScript对象数据或数组数据
JSON和JS对象的关系
JSON是JS对象的字符串表示法、它使用文本表示一个JS对象的信息、本质是一个字符串。例如:
JSON和JS对象的互转
要实现从JSON字符串转换为JS对象、使用JSON.parse()方法
要实现从JS对象转换为JSON字符串、使用JSON.stringfy()方法:
序列化和反序列化
把数据对象转换为字符串的过程、叫做序列化、例如:调用JSON.stringfy()函数的操作、叫做JSON序列化
把字符串转换为数据对象的过程、叫做反序列化、例如:调用JSON.parse()函数的操作、叫做JSON反序列化