Callback работает не так как я от него жду
Вопрос теоретический, без кода.
Прочитал про callback, даже попробовал - все работает. Но я не понимаю его суть.
Допустим у меня выполняется сложная функция, внутри которой есть асинхронный вызов request. Мне надо приостановить функцию до момента завершения request, потому что последующий код зависит от результатов request. Я прочитал, что решение - callback. Но callback то внутри request'а. Да, он вызовется по завершению request'а, но к тому моменту функция уже отломается без необходимых данных, которые request дожен был поставить.
Вопросы:
1) Я понимаю, что пропустил какой-то глобальный момент и что-то понимаю не так как оно есть. Но что я пропустил?
2) Если callback вызывается всегда в конце, то какой смысл, что его все равно во всех примерах руками прописывают? И если его надо прописывать, чем он тогда отличается от любой другой переданной в аргумент функции?
|