Задать вопрос
VerbAlexVlad
@VerbAlexVlad
Программист-любитель

Почему вызов функции происходит в конце?

Почему при клике на кнопку сначала вызывается alert(category_list), где переменная category_list = undefined, и только потом идет вызов функции categoryList, а не наоборот?

получается что выводится пустая переменная.
function categoryList() {
    $.ajax({
        url: '/category/list',
        success: function (res) {
            return res;
        },
    });
}

$('.category-button').on('click', function(){
    var category_list = categoryList();
    alert(category_list);
}
  • Вопрос задан
  • 30 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
  • Skillfactory
    Профессия Веб-разработчик
    12 месяцев
    Далее
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
kawabanga
@kawabanga
Сначала вызывается
var category_list = categoryList();

А потом
alert(category_list);

Так что все работает как задумано. Другое дело, что alert() вызывается быстрее, чем функция categoryList(); успевает завершиться. А теперь читайте доки по $.ajax и ищите пункт callback()
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы