一、XML
XML中文全称“可扩展标记语言”,和HTML一样都是标记语言,但和HTML没什么关系。HTML是网页内容的载体,XML是数据的载体。
<student>
<name>张三</name>
<sex>男</sex>
<age>19</age>
</student>
这是一段XML数据的示例,可以看到它的一个缺点是格式比较臃肿,标签比数据本身还多,传输效率低,它还有一个缺点是在JS中解析比较麻烦,所以前端比较少用XML。
二、JSON
JSON全称"JavaScript Object Notation",即“JavaScript对象表示法”,JSON是JavaScript对象和数组的字符串表示法,它本质是字符串,用字符串表示对象和数组。
JSON是一种轻量级的文本数据交换格式,相比XML更小、更快、更易解析。
1.JSON的对象结构
对象结构在JSON中的格式为{ “key”:value,[“key”:value,...] },属性名key必须用英文双引号包裹起来,value的数据类型有字符串(英文双引号)、数字、布尔值、null、数组、对象等6种。
{
"name": "张三",
"age": 19,
"single": true,
"girlfriend": null,
"friends": ["李四", "老王", "小五"],
"pet": {
"species": "cat",
"name": "Kitty",
"sex": "girl"
}
}
2.JSON的数组结构
数组结构在JSON中永 [ ] 包起来,里面的数据类型有字符串(英文双引号)、数字、布尔值、null、数组、对象等6种。
["HTML", "CSS", "JavaScript"]
[10, 28, 156]
[null, true, {"name": "Mark", "age": 25}, ["music", "movies", "books"]]
注意:1)使用双引号
2)JSON中不能写注释
3)JSON的最外层必须是对象或数组
4)JSON中的数据类型只能是上述6种
3.JSON和JS对象的转换
- JSON字符串转JS对象:使用JSON.parse()方法
- JS对象转JSON字符串,使用JSON.stringify()方法
把数据对象转换为字符串的过程叫序列化,如JSON.stringify();
把字符串转换为数据对象的过程叫反序列化,如JSON.parse()。
个人学习笔记,如有差误欢迎指正