taras1978
@taras1978
почти программист

Как получить доступ к глобальной переменной из функции?

Здравствуйте.
Извините за такой дурацкий вопрос.
У меня обьявлен глобальный массив
var organizations = [];
Потом в функции get_organizations( ) я наполняю его значениями из AJAX запроса.
если набрать в консоли organizations, то все ок получаем [Array(3)]
А если вызывать из функции которая должна рисовать таблицу redraw_table()
то console.log(organizations) внутри функции возвращает []
Как правильно обратиться к глобальному массиву из функции ?
  • Вопрос задан
  • 91 просмотр
Решения вопроса 1
sergiks
@sergiks Куратор тега JavaScript
♬♬
Всё дело во времени.
Массив объявляется и сразу доступен, пустой.
Запрос отправляете сразу.
И ожидаете результатов тут же, сразу же — вот это ошибка.

Ответ на запрос приходит не сразу, а (много) позже. Асинхронно. Обращаться к «глобальному» массиву есть смысл только после получения ответа.

Поэтому откройте удивительный мир промисов!
Ну, или просто вызывайте отрисовку таблицы redraw_table() в коллбэке по успешному завершению выполнения запроса.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
firedragon
@firedragon
Не джун-мидл-сеньор, а трус-балбес-бывалый.
Возможно у вас перекрытие глобальной переменной.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
01 мая 2024, в 02:11
5000 руб./за проект
01 мая 2024, в 00:29
2000 руб./за проект
01 мая 2024, в 00:20
15000 руб./за проект