При ожидании завершения нескольких отложенных объектов, почему:
$.when(tasks).then(function() {
document.write("Completed all requests." + "<br/>");
});
выполнить немедленно, но
$.when.apply(null, tasks).then(function () {
document.write("Completed all requests." + "<br/>");
});
ждет, пока задачи не будут завершены.