JavaScriptの非同期処理の利用を考えるとき、大なり小なり処理の完了や失敗を確認する必要があるはずです。そんな時に必要になるのがCallback(コールバック)処理です。
JavaScriptのコールバック関数とは、簡単に言えば、他の関数にパラメータとして関数を渡し、他の関数の中で呼び出されたり、実行されたりする関数のことです。
const onFollowSuccess = (username) => {
console.log(`You Followed ${username} !`);
};
const followTheIndianDev = (callback) => {
console.log('followTheIndianDev Run');
const username = 'theindiandev';
// call to Follow service
callback(username);
};
followTheIndianDev(onFollowSuccess);
// followTheIndianDev Run
// You Followed theindiandev !
上の例では、10行目で'onFollowSuccess'が'followThelndianDev'関数の引数(コールバック)として渡されていることに注目してください。
'onFollowSuccess'関数が実行される前に、まず'followThelndianDev'のイベントが実行されるのを待ちます。
コールバックが一般的に使われる理由は、JavaScriptの非同期動作で同期機能を持たせるためです。そしてこれにより処理の成否を判定するのです。