Task_Array_Util

//https://stackoverflow.com/questions/15504921/asynchronous-loop-of-jquery-deferreds-promises?answertab=votes#tab-top

2020-06-01 기준 버전입니다. 최신 버전을 확인하세요.

이 스크립트는 직접 설치하는 용도가 아닙니다. 다른 스크립트에서 메타 지시문 // @require https://update.greatest.deepsurf.us/scripts/404464/811172/Task_Array_Util.js을(를) 사용하여 포함하는 라이브러리입니다.

// ==UserScript==
// @name         Task_Array_Util
// @namespace    http://tampermonkey.net/
// @version      1.0
// @description  //https://stackoverflow.com/questions/15504921/asynchronous-loop-of-jquery-deferreds-promises?answertab=votes#tab-top
// @author       Dylan Banta
// @grant        none
// ==/UserScript==

/*
	TODO Description
*/

function doTask(taskNum) {
	log("doTask Enter");
    var time = Math.floor(Math.random() * 3000);

    setTimeout(function () {
        console.log(taskNum);
        dequeTask();
    }, time)
}

function createTask(taskNum) {
	log("createTask Enter");
    return function () {
        doTask(taskNum);
    }
}

function queueTask(tasks) {
	log("queTask Enter");
    //Loops through task array
    for (var i in tasks) {
        $(document).queue('tasks', function(){
			createTask(tasks[i]);
		});
    }

    //Add a logger to the end of the task stating that all tasks have been completed
    $(document).queue('tasks', function () {
        log("All tasks completed");
    });
}

function dequeueTask() {
    $(document).dequeue('tasks');
}