Показать сообщение отдельно
  #8 (permalink)  
Старый 22.11.2017, 00:18
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,590

Вот и ещё один человек открыл для себя асинхронность. Годы текут, ничего не меняется...

Sebastian Pereiro, "foo" - это функция-коллбэк, она будет вызвана только когда получит результат от базы, т.е. хрензнает когда, может быть спустя годы, если коннект к базе по радиоканалу с луны.
К тому времени 22 строка уже давно выполнится своим чередом.
Еслиб скрипт ждал результата, то он всё это время бы висел и ни на что не реагировал, а это какбэ противоречит самой сути современного js - асинхронности всего и вся.
Для начала дели свой код на функции и вызывай оные последовательно.

P.S. В самом современном js для таких случаев ныне применяют promise и async\await, но без понимания базы это всё равно бесполезно, т.к. лишь удобная надстройка над всё той же сутью.
__________________
29375, 35

Последний раз редактировалось Aetae, 22.11.2017 в 00:26.
Ответить с цитированием