首頁 >web前端 >js教程 >jquery中對於批次deferred的處理方法_jquery

jquery中對於批次deferred的處理方法_jquery

WBOY
WBOY原創
2016-05-16 17:03:09988瀏覽

此程式碼仿照jquery原始碼中$.when()的實作

複製程式碼 程式碼如下:

function test(i) {


function test(i) {
  $.Deferred();
    if(i%2 == 0) {
        console.log("resolve " i);
  console.log("failure " i);
        dfd.reject();
    }

    return dfd.promise

    return dfd.promise

    return dfd.promise(); >    var dfd = $.Deferred();
    var remain = 10;
    for(var i=0;i   for(var i=0;i  🎜>            if(!(--remain)) {
                      }).fail(function() {
            if(!(--remain)) {
                dfd.resolve();
           turn dfd.promise();
}

call().done(function() {
    console.log("all finished");});




輸出結果:

複製程式碼 程式碼如下:resolve 0 test.js:4resolve 2 test.js:4
failure 3 test.js:7
resolve 4 test.js:4
failure 5 test.js:7
resolve 6 test.js:4
failure 7 test.js:7
resolve 8 test.js:4
failure 9 test.js:7
all finished



陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn