jquery vs google closure ajax
jquery vs google closure ajax
我一直在研究ajax调用的google闭包库,并且我已经完成了一个示例,看起来像:
goog.events.listen(request, "complete", function(){
if (request.isSuccess()) {
// do something cool
} else {
// display an apologize message
}
});
与jquery的例子相反,它看起来像:
$.ajax({url: url, success: function () { }, error: function () { }});
我已经看到谷歌关闭弹出很多,但在这种情况下,它的优点或缺点是什么?jquery库调用对于ajax相关的调用来说似乎要简单得多,比如这个。
您的闭包示例不完整。我假设在您的示例之前,您创建了一个XhrIo
实例,并在其上调用send()
。
如果你想要一个更简单的闭包相当于jQuery的例子,你可以使用静态的XhrIo.send()
。它看起来像这样:
goog.net.XhrIo.send(
url,
function(event) {
var xhr = event.target;
if (xhr.isSuccess()) {
// do something cool
} else {
// display an apologize message
}
});
无可否认,这比jQuery版本更笨拙。一般来说,Closure的设计考虑了面向对象编程(与jQuery形成鲜明对比,jQuery主要是静态函数)。这可能适合你,也可能不适合你,这取决于你是否喜欢用面向对象的方式编写JS代码。
在这种特殊情况下,如果您创建一个XhrIo
对象,您可以重用多个请求(例如,您可以在其上使用setTimeoutInterval()
以用于所有请求),那么您可能会从Closure中获得一个小优势。如果您关心内存,闭包还可以让您更显式地控制垃圾收集。
相关文章:
- 无法在通过jQuery的ajax加载的页面中执行javascript
- 如何通过ajax刷新JSF填充的javascript变量
- 如何在php文件中获取$.post-ajax传递的值
- Replacing $ .ajax?
- 在使用Polymer'加载所有json文件后执行方法;s的核心ajax
- Ajax发布表单序列化,发布引号'
- 通过Ajax将JavaScript函数传递给PHP文件
- ajax请求的顺序总是不同的
- 可以't使用Polymer's的核心ajax
- Ajax Live搜索发布到Laravel视图
- Ajax聊天消息重复而不仅仅是更新
- 从控制器返回后Ajax启动事件激发
- PHP AJAX图片上传示例不上传
- 从ajax请求中获取javascript对象
- 另一个ajax调用中的Jquery ajax调用在for循环中没有按预期工作
- 如何在Javascript中解析AJAX数组的特定部分
- Ajax文件加载和<输入>文件加载
- Javascript/jQuery中的并行Ajax调用
- Ajax-如何获取数据
- jquery vs google closure ajax