加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

AJAX笔记-数据传输格式

发布时间:2020-12-16 01:40:19 所属栏目:百科 来源:网络整理
导读:HTML 优点: 传输的直接是HTML格式的内容,可以直接用innerHTML = XMLHttpRequest.responseText来获取操作。 缺点 如果是更新多个部分,则对responseText内容不容易拆分。 XML var result = XMLHttpRequest.responseXML 返回的是XML文档,需要进行解析,然后

HTML

优点:

传输的直接是HTML格式的内容,可以直接用innerHTML = XMLHttpRequest.responseText来获取操作。

缺点

如果是更新多个部分,则对responseText内容不容易拆分。

XML

var result = XMLHttpRequest.responseXML
返回的是XML文档,需要进行解析,然后重组成HTML文档。通常是通过类似下面的TagName等进行获取。
var data = result.getElementsByTagName("data")[0]...
通过获取xml中的内容,然后创建各种节点,自己构建HTML文档 document.createElemnt...

优点:

XML是一种通用的数据格式,不必把数据强加到已定义好的格式中,利用DOM可以完全解析数据。

缺点:

如果文档来自于服务器,就必须保证文档含有正确的头部信息<xml?...>。如果文档类型错误,那么responseXML的值将是空的。当浏览器接收到长的XML文件后,DOM解析会相当复杂。

JSON

JavaScript Object Notation
//数据格式
window.onload = function(){
		var jsonObject = {
				"name":"high",//每个json元素间必须用逗号隔开
				"age":12,//值可以是字符串,整形等正常的类型
				"address":{"country":"China","City":"WuHan"},//值可以是一个新的json对象
				"speak":function(){console.log("Hello json")} //可以是函数
		};
		console.log(jsonObject.name)
		console.log(jsonObject.age)
		console.log(jsonObject.address.country)
		jsonObject.speak(); //函数调用,后面要加()
	};


通过JSON传输的数据会议字符串的方式,放在XMLHttpRequest.responseText中。
在javascript中,eval函数可以将字符串转换为可执行的javascript语句。
对于json格式的字符串,则可以通过eval直接转换为json对象。
var jsonStr = "{'name':'high'}";
var testObject = eval("(" + jsonStr + ")"); //注意在转换时必须要加上括号

优点:

作为数据传输格式,JSON和XML很相似,使用方面更加灵巧。JSON不需要从服务器端发送含有特定内容类型的头部信息(不需要类似xml的头信息)。

缺点:

语法过于严谨,代码不如xml那样容易阅读。eval函数存在风险。可以执行传输过来的字符串,可能是恶意代码。

<完>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读