首页 > 代码库 > jq里延迟对象Deferred,状态变化后,会一直保持

jq里延迟对象Deferred,状态变化后,会一直保持

    var defer = $.Deferred();
    defer.resolve(‘abc‘);
    defer.done(function (data) {
        console.log(data);
    })
    defer.done(function (data) {
        console.log(data);
    })

  以上代码运行结果:

  技术分享

  resolve之后的两次done()都执行了,而不是只执行第一次。说明延迟对象是一种状态,只要变更了,后面根据状态的函数都会执行。

jq里延迟对象Deferred,状态变化后,会一直保持