reference:

http://www.html-js.com/article/Study-JavaScript-jQuery-Deferred-and-promise-every-day

1.5版本之后,$.ajax()的返回对象实现了CommonJS的Promises/A接口。它包含了很多的内容。CommonJS标准定义了一系列通用的独立的接口。Promises/A+是其中的一个。它带来的好处不仅仅体现在jQuery中。例如,如果你编写Node.js代码,你也可能就经常需要用到这个接口。这是一件非常棒的事情。

使用Promises处理回调函数和前面的例子有所不同:

var promise = $.ajax({
url: "/myServerScript"
}); promise.done(mySuccessFunction);
promise.fail(myErrorFunction);

你也可以在一个then()函数中将done()和fail()函数合并起来。我们可以将上边的代码重写为以下形式:

var promise = $.ajax({
url: "/myServerScript"
}); promise.then(mySuccessFunction,myErrorFunction);

随机推荐

  1. Azure Storage Blob 属性设置

    概述 在使用SDK做Blob对象属性的获取或设置时,如果只是直接使用get或set方法,是无法成功获取或设置blob对象的属性.主要是因为在获取对象时,对象的属性默认并未被填充到对象,这就需要执行额外 ...

  2. 微信模板消息php

    微信的模板消息需要认证的公众号后台申请 申请通过后就可以用平台定义的消息模板了 define('IN_ECS', true); require(dirname(__FILE__) . '/includ ...

  3. unity,set ugui rectTransform anchor by script

    如果想用代码实现与下面面板相同的功能 试验可知改变上面选项下面四个值也随之变化: 所以说明二者是一回事儿. 因此,只要通过代码修改RectTransform的anchorMax和anchorMin成员 ...

  4. 匿名内部类 , Iterable<T> 和 Iterator<T>

    package generic; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; i ...

  5. JDK配置之坑

    JKD的配置我这里就不隆重介绍了,引用一篇百度经验,足够让大家去学习 JDK配置:https://jingyan.baidu.com/article/3c343ff70bc6ea0d377963df. ...

  6. java web 打水印

    /** * 把图片印刷到图片上 * * @param pressImg -- * 水印文件 * @param targetinp -- * 目标文件 * @param x * --x坐标 * @par ...

  7. PHP学习笔记(10)mysql常用命令

    1. 连接mysql数据库: 输入: mysql> mysql -uroot -p123(注意后面没有分号!!) 输出: mysql: [Warning] Using a password on ...

  8. shell 实现mysql写入操作

    mysql -uroot study -proot << EOF > insert into top_n_movie(movie,sumprice)values('hello kit ...

  9. Spark Standalone与Spark on YARN的几种提交方式

    不多说,直接上干货! Spark Standalone的几种提交方式 别忘了先启动spark集群!!! spark-shell用于调试,spark-submit用于生产. 1.spark-shell ...

  10. PHP——smarty模板(做登录页面和主页面)

    denglu.php <?php include "init.inc.php"; $smarty->assign("action","ma ...