有没有人测试过,或者有人知道,这两种不同的呈现相同html内容的方法的性能差异(除了一种导入了jquery库,另一种没有导入,Ajax版本中有两个请求相对于一个之外)?
通过Ajax添加
<html>
<head>
<script src="javascripts/jquery.js" type="text/javascript"></script>
<script type="text/javascript">
jQuery.ajax({
type: "GET",
url: "http://www.mysite.com/events",
success: function(result) {
$("#container").append(result);
}
});
</script>
<body>
<div id="container">
</div>
</body>
</html>
内联
<html>
<head>
<body>
<div id="container">
<!-- events -->
<ol>
<li>
<p>
Event A...
</p>
</li>
</ol>
</div>
</body>
</html>
这方面的统计数字是什么,你什么时候会和你不使用这样的东西?Ajax版本有多慢(比方说,如果我呈现像Amazon主页这样复杂的东西,假设我不必担心路径,因为这将是我自己的应用程序)?这个问题独立于可读性的最佳实践以及所有这些,只是想知道性能。
发布于 2010-03-03 23:58:43
发布于 2010-03-03 03:02:29
发布于 2010-03-03 03:07:38
在呈现方面,jQuery比普通的HTML慢。就像任何javascript DOM操作比普通HTML文件慢一样
但这不仅仅是渲染性能。一个花哨的HTML格式的大表可能要比一个紧凑的JSON数据查询需要更长的时间来下载,并且需要一点jQuery来格式化它。
仅仅通过AJAX获取一个普通的HTML片段将永远不会为您的下载时间带来任何好处。但是通常从用户的角度来看,它看起来更快,因为主页面结构加载得更快,然后细节就变得更充实了。
jQuery库是缓存的,因此每个会话只有一次或更少的开销。
https://stackoverflow.com/questions/2370505
复制相似问题