И, если после выполнения задачи из массива, мы ее удалим, то в какой-то момент у нас будет массив из миллиона undefinedв нем, после которых снова добавляются новые задачи.ты в курсе про shift? и зачем вообще у тебя тут рекурсия. Либо вообще используй нормальные очереди