Переменные обратного вызова
Что это такое?
Переменные обратного вызова - это переменные , переданные действию для передачи результата пользователю.
Зачем они нужны?
Бытовой пример– когда отправляешь в письме на радиостанцию пустой конверт со своим же адресом и марками, чтобы в нём прислали ответ. Нужно время, чтобы, во-первых письмо дошло до радиостанции, во-вторых чтобы был прислан ответ.
Обычно это нужно при асинхронном выполнении — когда строчки кода не последовательно выполняются одна за другой (60 раз в секунду), а запускается (и завершается) какая-то долгая задача и ещё неизвестно, когда она закончится. Обычно вы должны использовать выражения для получения значения, но асинхронные действия не могут этого сделать, поскольку они ничего не вернут для нескольких кадров (время, необходимое для их выполнения). Таким образом, они принимают в качестве аргумента переменную и устанавливают ее значение на возвращаемое значение после завершения . Обычно у вас есть две переменные обратного вызова: одна, чтобы сказать, успешно ли выполнено асинхронное действие, и одна с фактическим возвращаемым значением действия.