Ajax 选择合适的数据格式
之前的一系列jQuery实现Ajax的日志里面,一共提到了4种外部数据的格式,分别是:html,javaScript,json,xml。每种格式都可以通过jQuery的Ajax函数加以处理。而且,我们也验证了这4种格式都能够用来方便地处理任务,来实现我们想要的效果或者获取我们想要的数据。那么,当确定在应用程序中使用哪种格式时,应该考虑哪些因素呢?

HTML数据格式:
优点:HTML片段实现起来很是简单,基本上不需要啥太大的工作量,所以使用此方式人一般不会很累。只需要写静态页面就行了。这种格式的外部数据可以通过一种简单的方法加载并插入到页面中,甚至连回调函数也不必使用,因为使用此种方式无需遍历数据。
缺点:外部的HTML文件必须与目标容器(现有页面)的代码紧密结合,包括div标签啥的。例如,你在这个返回的外部html文件中,第一条语句就写</div>这是很容易造成页面飞掉的。基本是不可重用的。
JSON数据格式:
优点:JSON文件的结构使其可以方便的被重用。而且,它们非常简洁,易阅读,易维护。因为调用JavaScript的eval()函数就能解析此种格式的文件,所以在速度方面那是“PIA,PIA地”。
缺点:必须通过遍历来提取数据信息。并且eval()函数会带来固定的风险。并且如果JSON文件有错误,那么您的程序可以会自动终止执行的,所以此种数据必须有心腹小弟仔细进行人为的构建。(大家有好的自动生成的JSON工具可以推荐给我)
JavaScript数据格式:
优点:JavaScript文件能够提供极大灵活性。能够加载JavaScript,则意味着可以将很少乃至的行为提取到外部文件中,从而在加载该文件之前有效地减少页面的代码量。
缺点:这并不是一种真正的数据存储机制,因为此种文件针对特定的语言,所以不能通过它们将同样的信息提供给完全不同的系统。所以个人认为这并不是常规套路。
XML数据格式:
优点:XML文档的可移植性是毋庸置疑的。并且其为Web服务领域的“世界语”,所以此种格式提供的数据使它极有可能在其他地方被重用。
缺点:XML文件体积相对较大,所以同其他文件格式相比,解析和操作它们的速度肯定要相对慢一些了。这是时间和空间上共同占用多的资源,呵呵。
总结:
通过以上分析,我们知道,在不需要与其他应用程序共享数据的情况下,以HTML片段提供外部数据一般来说是最简单的。如果数据需要重用,而且其他应用程序也可能因此受到影响,那么在性能和文件大小方面具有优势的JSON通常是不错的选择。而当远程应用程序未知时,XML则能够为良好的互操作性提供最可靠的保证。(直接无视JavaScript数据格式)。萝卜白菜,各有所爱,不管黑猫白猫,会抓“杰克”就是好猫。
感谢:
感谢《jQuery基础教程》的作者Jonathan Chaffer及翻译李松峰等,上面一大部分语言是直接摘录。勿怪。另特别感谢Google大妈,虽然您搜到的内容均出自同一人之手,但是内容和本文基本一致,看来不是这本书的读者就是这本书的作者。嗯。
文章作者:simaopig
本文地址:http://www.xiaoxiaozi.com/2009/07/05/1082/
版权所有 © 转载时必须以链接形式注明作者和原始出处!
我来了,JSON我还没听过,JavaScript和XML见得多,XML的确够大,我的数据导出有10万行代码。
[回复]
@LAONB
晕。已经10W了啊?有些恐怖。。
我其实很讨厌XML的,尤其用php处理XML,很烦人。嗯。
[回复]
小子现在走高难度技术路线了!
[回复]
@卢松松
呃,没有啊。。只是这本书看到这里了。呵呵 :D
[回复]
都是些看不懂的天书,不关我的事,我是路过的!
[回复]
难以理解啊.
[回复]
@Lxhome :x 同感
[回复]
@Lxhome
。。。打酱油请走左边。
[回复]
@Deloz
慢慢消化,理解不了没关系,别消化不良就好。
[回复]
@神兽
。。。。我做俯卧撑去了。
[回复]
完蛋,发现我的知识越来越不够了
PS:昨晚做梦我买了本英文版的jQuery基础教程,一边读一遍翻译
[回复]
咱俩是一个界别的
[回复]
我用JSON+XML!!!!!!!!!!!!!!!!!!!! :o 谁用谁知道啊
[回复]
@小明猪
呃,我喜欢你的梦。。。呵呵。
[回复]
@micogle
呼,如果学编程的话你就能懂了,呵呵。
[回复]
@看海
我用的最多的也是JSON。呵呵。
[回复]
感觉最好的是xml
[回复]
@bolo
得看具体实际应用,一般如果请求PHP,从服务器返回的话,我喜欢用的数据类型是JSON。
[回复]
10万行的XML。已经超出XML使用范围了。。再导出应该用SQL文件或者.dat文件
[回复]
@看海
从内心不喜欢XML,用不习惯。
[回复]