背景
一度は学んだはずなのにしばらく使ってないとわからなくなることがよくある。callbackもその1つで今まであまり意識して使えていなかったので、メモする
callback関数とは
- 関数の引数として渡す関数のこと
- 渡ってきた関数をその関数内で実行(call)するからcallback関数
例
例えば、以下のようにcallback関数を受け取って実行するrunCallbackとcallback関数であるplusをそれぞれ定義する。
sample.js
const runCallback = (a, b, callback) => {
return callback(a, b);
}
const plus = (a, b) => {
return a + b;
}
runCallback(1, 2, plus);
上記を実行すると
3
となる。
なぜ、callback関数を使う必要があるのか?
結論、渡すcallback関数によって関数の処理を変更ことができるから
例えば先程の例でも新たにminusというcallback関数を追加することでrunCallback関数の処理を変更することができる。
sample.js
const runCallback = (a, b, callback) => {
return callback(a, b);
}
const plus = (a, b) => {
return a + b;
}
const minus = (a, b) => {
return a - b;
}
runCallback(5, 2, plus);
runCallback(5, 2, minus);
上記を実行すると
7
3
このように、callback関数次第で関数の処理を制御できる点がcallback関数の便利なところ