html(作用:网页)
优点:1、由于它本身就是所期望的数据格式,可以直接插入页面,不用解析;
2、可读性高。
缺点:1、如果要使用AJAX更新一篇文章的多个内容,HTML数据格式不合适;
XML(作用:一般用作配置文件,数据传输格式):处理xml格式的数据分三步,首先解析xml文档,然后构建节点,最后把节点放入要显示的HTML页面中。
优点:1、不必把数据强加到已定义好的格式中(相对于html),而是要为数据自定义合适的标记;
2、XML是一种通用的数据格式。
缺点:1、如果文档来自于服务器,就必须保证文档含有正确的首部信息(如:<?xml version="1.0" encoding="utf-8"?> );
例:
<?xml version="1.0" encoding="utf-8"?> <country> <name>中国</name> <province> <name>黑龙江</name> <cities> <city>哈尔滨</city> <city>大庆</city> </cities> </province> <province> <name>广东</name> <cities> <city>广州</city> <city>深圳</city> <city>珠海</city> </cities> </province> <province> <name>台湾</name> <cities> <city>台北</city> <city>高雄</city> </cities> </province> <province> <name>新疆</name> <cities> <city>乌鲁木齐</city> </cities> </province> </country>
JSON(作用:JSON与XML很相似)
优点:1、比XML体积更小;
2、在网上传输时,相比XML可以更省流量;
3、相比XML,JSON不需要从服务器端发送含有特定内容类型的首部信息。
缺点:1、语义性差,没XML直观。
例:
{ "name": "中国", "province": [{ "name": "黑龙江", "cities": { "city": ["哈尔滨", "大庆"] } }, { "name": "广东", "cities": { "city": ["广州", "深圳", "珠海"] } }, { "name": "台湾", "cities": { "city": ["台北", "高雄"] } }, { "name": "新疆", "cities": { "city": ["乌鲁木齐"] } }] }
注意:1、XML 解析是将 XML 数据从其序列化字符串格式转换为分层格式的过程。
2、JSON是javascript原生格式,这意味着在JavaScript中处理JSON数据不需要任何特殊的API或工具包。
三种格式的对比总结
(1)如果应用程序不需要与其它应用程序共享数据的时候,优先选择HTML,使用HTML片段来返回数据最简单。
(2)如果数据需要重用,优先选择JSON,其在性能和文件大小方面有一定优势。
(3)当远程应用程序未知时,优先选择XML,因为XML是web服务的领域的“世界语言”。