var arr = [1000, 3000, 500];
function next() {
    var d = jQuery.Deferred(),
        i = 0,
        doNext = function () {
            if (i < arr.length) {
            	console.log(arr[i] + "-------------" + arr[i] * Math.random());
            	i++;
                setTimeout(doNext, arr[i]);
            } else {
                d.resolve();
            }
        };
    setTimeout(doNext, arr[i]);

    return d.promise();
}

next().then(function(){
	console.log("OK! its finish.");
});

  

相关文章: