Обратный вызов является частью кода (т.е. адрес или ссылка функции или метода или лямбда-выражения), который передается как аргумент другому коду, который, как ожидают, перезвонит (выполняют) аргумент в некоторое удобное время. Этот тег должен использоваться с вопросами о API, который использует спины вызова для уведомления вызывающей стороны, когда действие завершено. Используйте тег обработки событий для вовлечения вопросов, подписывающегося на события такой как в платформе GUI.

В программировании обратный вызов является частью исполняемого кода, который передается как аргумент другому коду, который, как ожидают, перезвонит (выполняют) аргумент в некоторое удобное время. Вызов может быть непосредственным как в синхронном обратном вызове, или это могло бы произойти в более позднее время, как в асинхронном обратном вызове.

Статья Wikipedia: http://en.wikipedia.org/wiki/Callback_ (computer_programming)


Пример синхронизирующего обратного вызова процесса в JavaScript:
function outer(argumentOne, fn){ console.log("what was argumentOne? ", argumentOne); return fn(); } function someCallback() { console.log("callback triggered!"); } outer("brown", someCallback); 

Пример асинхронного обратного вызова процесса в JavaScript:

function mySandwich(param1, param2, callback) { console.log('Started eating my sandwich.\n\n It has: ' + param1 + ', ' + param2); setTimeout(function(){ callback(null,param1*param2);},2000); } mySandwich(1, 2, function(err,result) { console.log('Finished eating my sandwich.' + result); }); 

Вывод:

Started eating my sandwich. It has: 1, 2 Finished eating my sandwich.2