• js Deferred的使用


    jQuery.Deferred()

    创建一个新的Deferred对象的构造函数,可以带一个可选的函数参数,它会在构造完成后被调用。

    jQuery.when()

    通过该方式来执行基于一个或多个表示异步任务的对象上的回调函数

    jQuery.ajax()

    执行异步Ajax请求,返回实现了promise接口的jqXHR对象

    deferred.then(resolveCallback,rejectCallback)

    添加处理程序被调用时,递延对象得到解决或者拒绝的回调。

    deferred.done()

    当延迟成功时调用一个函数或者数组函数.

    deferred.fail()

    当延迟失败时调用一个函数或者数组函数.。

    deferred.resolve(ARG1,ARG2,...)

    调用Deferred对象注册的‘done’回调函数并传递参数

    deferred.resolveWith(context,args)

    调用Deferred对象注册的‘done’回调函数并传递参数和设置回调上下文

    deferred.isResolved

    确定一个Deferred对象是否已经解决。

    deferred.reject(arg1,arg2,...)

    调用Deferred对象注册的‘fail’回调函数并传递参数

    deferred.rejectWith(context,args)

    调用Deferred对象注册的‘fail’回调函数并传递参数和设置回调上下文

    deferred.promise()

    返回promise对象,这是一个伪造的deferred对象:它基于deferred并且不能改变状态所以可以被安全的传

    实例

    var data;
    
    var wait = function(){
        var dtd = $.Deferred(); // 新建一个Deferred对象
        var tasks = function(){
            data='处理完成';
            var args = 'byebye';
            dtd.resolve(args); 
        };
        setTimeout(tasks,3000);
        return dtd.promise();
    };
    
    wait().done(function(args){
        $("#dd").text(data);
        alert(args);
    });
  • 相关阅读:
    ACM 01背包问题
    HDU 1222(数论,最大公约数)
    HDU 1045(质因数分解)
    HDU 4548(美素数)
    POJ 1458 Common Subsequence
    light oj 1047-neighbor house
    POJ 3903 Stock Exchange
    HDU 1069 monkey an banana DP LIS
    max sum
    ACM比赛
  • 原文地址:https://www.cnblogs.com/nnavvi/p/5614565.html
Copyright © 2020-2023  润新知