服务器端与客户端之间进行数据传输与交换的格式。
前端领域,经常提及的两种数据交换格式反别是XML和JSON。
XML
XML 指可扩展标记语言(EXtensible Markup Language),是一种很像HTML的标记语言,设计宗旨是传输数据,而不是显示数据。
特点
使用类似HTML的标签描述,标签成对出现。
标签名字随意,没有预定义。
标签名字在就是属性名,标签中间存储属性的值。
XML与HTML功能对比
xml 的重点是为了传输和存储数据,是数据的载体;一般是程序员来解析得到标签中的内容。
html 的重点是描述网页内容,是网页内容的载体;一般是浏览器来解析并显示成页面。
JSON
JSON是一种轻量级的文本数据交换格式,在作用上类似于XML,专门用于存储和传输数据,但是JSON比XML更小、更快、更易解析
JSON的两种结构
·对象结构
对象结构在JSON中表示为〕括起来的内容。数据结构为{key: value,key: value,...]的键值对结构。其中, key必须是使用英文的双引号包裹的字符串,value的数据类型可以是数字、字符串、布尔值、nulI、数组、对象6种类型。
·数组结构
数组结构在JSON中表示为[]括起来的内容。数组结构为"["java","javascript",,30,true,...]。数组中数据的类型可以是数字、字符串、布尔值、null、数组、对象6种类型。
JSON的序列化与反序列化
把数据对象转换为字符串的过程,叫做序列化。例如:调用 SSON.stringify()函数的操作,叫做JSON序列化JSON.stringify)函数就叫做序列化函数。
把字符串转换为数据对象的过程,叫做反序列化,例如:调用`“SON.parse()函数的操作,叫做JSON反序列化函数就叫做反序列化函数。
在日常的工作中最常用的还是JSON,因为相比较XML,JSON的解析更加的简单,结构更为清晰,而XML内容比JSON还要大,传输比JSON要占用更多的带宽,解析更为的麻烦,需要借助解析框架,门槛较高。