使用ajax请求的最快方法是什么?

时间:2011-12-28 18:40:36

标签: javascript jquery

我对服务器通过AJAX从服务器请求POST或GET的最快和最友好的方式有点困惑,是jQuery($.load()$.get(),{{1 },$.post())或者像XMLHttpRequest这样的Javascript?

我需要在我的项目中创建一个函数或类来通过AJAX从服务器调用请求,但我不知道服务器jQuery或Javascript的速度更快,更友好。

4 个答案:

答案 0 :(得分:6)

  

是jquery $ .load(),$。get(),$。postt(),$ .ajax()

这些功能都是彼此的准同义词; jQuery添加了一些语法糖和标准化接口,但最后,它使用浏览器的原生Ajax引擎(如XMLHttpRequest)。我不认为它们之间存在明显的性能差异。

可能可能是超密集的边缘情况,有数千个请求,其中使用“原始”浏览器引擎可以在这里或那里减少几毫秒,但对于大多数情况,它赢了“无所谓。

如果你需要的话,你很可能会使用jQuery的功能(或其他库的功能),甚至不用考虑很长时间的性能。许多大牌使用jQuery,including Stack Overflow用于chat

答案 1 :(得分:4)

就此而言,

.load()$.get()$.post()$.getJSON()都只是$.ajax()的捷径。它们仅为$.ajax(),其中包含一些为您预先确定的设置。

.load()唯一独特之处在于它已经为您定义了一个成功处理程序,它将检索到的内容注入到当前目标中。

它们都同样快,唯一的问题是你发现最具可读性。

如果你要进行大量类似的ajax调用,那么最好在可访问的地方使用$.ajaxSetup()(阅读:靠近顶部)。这允许您预先设置最常用的设置,从而创建自己的快捷功能。

答案 2 :(得分:2)

jQuery只需包装XMLHttpRequest,并在所有浏览器中为您标准化界面。有一点开销,但在网络方面没有任何东西。我要说jQuery函数的开销与你节省自己不得不自己跨浏览器标准化XMLHttpRequest的时间相比是微不足道的。

否则您的速度取决于服务器的带宽,连接到服务器的客户端,流量,后端代码的速度/优化等。

答案 3 :(得分:1)

jQuery javascript。您描述的所有ajax函数都依赖于XMLHttpRequest(或旧版浏览器中的替代函数),因此它们比直接使用浏览器的功能要慢。

当然,权衡是jQuery的功能更容易使用。因此,如果您的第一个问题是效率,请编写您自己的ajax函数(或直接使用ajax)。如果你只想完成它,那么使用jQuery会更快。