Я всегда читаю и слышу этот термин во многих местах, но мне не очень понятно, что он означает, когда речь идет о «обратном вызове». Я не знаю, анонимная ли это функция или что-то в этом роде.
Я всегда читаю и слышу этот термин во многих местах, но мне не очень понятно, что он означает, когда речь идет о «обратном вызове». Я не знаю, анонимная ли это функция или что-то в этом роде.
Обратный вызов — это функция. Вы передаете эту функцию в качестве параметра другой функции, чтобы после завершения выполнения она вызывала ваш обратный вызов.
Обычно ваша функция обратного вызова что-то делает с результатом функции, которой она была передана. Таким образом, вам не нужно ждать, пока функция, которую вы вызываете, завершит работу, чтобы продолжить выполнение других действий, потому что вы знаете, что она «перезвонит вам», когда получит результаты.
Грубо говоря, вы говорите функции:
Обратным вызовом может быть любая функция, обычно используются анонимные функции или лямбда-выражения, но это не обязательно.
Пример функции обратного вызова при использовании jQuery:
Когда Ajax завершен, он вызывает функцию обратного вызова
mostrar()
.Обратный вызов — это функция, которая будет выполняться внутри другой функции.
В JS это пример:
Обратные вызовы используются при выполнении асинхронных операций , то есть выполнения кода, которые выполняются в виде «потока», и когда это выполнение заканчивается, его результат может быть получен с помощью обратного вызова.
В дополнение к ответу других пользователей мне нравится использовать визуальную интерпретацию, которую предлагает программа типа «калькулятор».
У вас в калькуляторе много кнопок. От самых простых с элементарными операциями до тех, что работают с комплексными числами. Все они могут выполнять операции всех видов, и я предполагаю, что вы умеете пользоваться калькулятором.
+
=
Что ж, этот, по-видимому, базовый пример является наглядным примером того, что такое обратный вызов. Когда вы нажимаете кнопку
=
, эта кнопка выполняет процедуру, которая определяет, какую операцию над какими числами выполнять. Эта процедура называется «обратный вызов», что можно грубо перевести как «функция, вызываемая этой процедурой».Эта идея очень полезна при работе с пользовательскими интерфейсами ( GUI ) и меню.