Показать сообщение отдельно
  #1 (permalink)  
Старый 01.03.2013, 15:22
Новичок на форуме
Отправить личное сообщение для dmit.medv Посмотреть профиль Найти все сообщения от dmit.medv
 
Регистрация: 01.03.2013
Сообщений: 2

Как избавиться от рекурсии?
Здравствуйте.
По нажатию кнопки:
<button onclick = "goCreatePackagePassports()">Go!</button>

вызывается функция:
function goCreatePackagePassports() {
    $.ajax({
      type: "POST",
      url: "delete1.php",
      data: "name=John&location=Boston",
      success: function(msg) {  // обработка ответа
        $('#status').append(msg + '<br />');
        if (msg == 'done') return;
        else goCreatePackagePassports(); // Проблемное место - рекурсия!
      }
    });
    return;
}


Требуется обращаться через ajax к файлу delete1.php до тех пор пока он не вернет "done". Я смог реализовать это только с помощью рекурсии. Подскажите пожалуйста как можно переписать код, чтобы избавиться от рекурсии. На сколько я знаю, рекурсия требует дополнительной памяти, а количество обращений к файлу delete1.php неизвестно, и вполне может исчисляться тысячами.
На сколько это критично для браузера? И как бы вы переписали мой код?

спасибо..
Ответить с цитированием