👋
コールバック関数って?
コールバック関数の説明の前に、、
JavaScriptで非同期処理を行うのは
1.コールバック関数
2. Promise
3. async/await
の三つがある。本質的には一緒で見た目、書き方が違うだけ。
コールバック関数って?
コールバック関数とは!?
関数の引数に渡された関数をコールバック関数という
日本語では呼び戻し
関数は呼び出す側と呼び出す側がいて、関数を呼び出す側が逆に呼び出す側に回る関数をCallBack(呼び戻し)。もし処理が終わったらやってほしいのがコールバック関数。
構文
function 高階関数(コールバック関数) {
コールバック関数();
}
超簡単に言うと関数の中に関数を実行している。
例
//家に帰ったら手を洗ってゲームしたり、料理したりする
//高階関数を使わない場合の処理
function play(game) {
if (/*手を洗ったら*/) {
//gameする処理
}
function cook(food){
if (/*手を洗ったら*/) {
//cookする処理
}
//高階関数を使った処理
function washed(fn){
if (/*手を洗ったら*/) {
fn();//コールバック関数処理
}
}
function play(game) [
//ゲームする処理
}
function cook(food)[
//料理する処理
}
//手を洗った状態を保証した状態で、ゲームできる
washed(play);
高階関数を使うことで、、
- 関数が増えていった場合の記述量が減る
- コードの見通しが良くなり、役割が明確になる
- 後々、処理が変わったり変更したりする場所が一か所で済む
Discussion