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

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

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

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

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

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

Похожие вопросы
22 нояб. 2024, в 11:53
3000 руб./за проект
22 нояб. 2024, в 11:51
20000 руб./за проект
22 нояб. 2024, в 11:50
200000 руб./за проект