JSON vs HTML Ajax响应

时间:2012-02-28 18:20:14

标签: json jquery

哪个更快,在JSON中返回ajax然后处理JSON响应以呈现html,或者只是将Ajax响应放在一堆<li></li>的原始html中?

2 个答案:

答案 0 :(得分:4)

取决于。在这两种情况下,服务器只是返回带有文本的响应。如果响应的JSON版本需要的字符数多于HTML版本,则该响应将需要更长时间才能传回客户端,反之亦然。

但当然还有服务器端脚本必须完成它的工作。也许在您的情况下,生成JSON比服务器端脚本中的HTML更快。我无从知晓。

然后是客户端处理。您必须解析响应以将其转换为真实对象,然后您需要迭代生成的对象以生成HTML。这肯定需要更长时间,而不仅仅是采取HTML响应并将其注入DOM。

但是,我怀疑性能差异是否会引人注意,这意味着您提供JSON响应与HTML响应的决定应该基于其他因素。

答案 1 :(得分:0)

如前所述,这取决于。从服务器端的角度来看,让客户端生成HTML是很有意义的,因为只是序列化JSON更快并且需要从服务器上消除很多压力,因为它不必处理所有HTML生成。另一个好处是,您在返回JSON时提供的API不仅可以用于输出HTML。

如果你想从客户端开始工作,那么在服务器端生成HTML是有意义的。

最终,它的速度很大程度上取决于所使用的技术。两种方式都可以表现得非常好,但如果做错了,任何一种都会很慢。