コールバック関数はわかりにくなぁ。

こういうときは、なにか、わかりやすい例えと比較すると良いと思う。

かつて転送電話というのを使っていまして。体験したことのある例えがグッと来ると思うわけ。

転送電話の図式は、次のとおり。

 

 


 

で、これをもとに、コールバック関数を書いてみようと思う。   

function WhoToTensoDenwa (callback){
        console.log(‘だれかから’)
        callback();
 }

上記の関数宣言では、うまくいかず。関数式にする必要あり。

var WhoToTensoDenwa =  function (callback){
        console.log(‘だれかから’)
        callback();
 }    

*この際のcallback、callback()は、random、random()など、なんでもよろしい。

で、コールバック関数は、こちら。

function TensoDenwaToMe(){
          console.log(‘おれに電話‘);
 }

var TensoDenwaToMe = function(){
         console.log(‘おれに電話‘);
 }

コールバック関数を引数に入れてみる。

WhoToTensoDenwa(TensoDenwaToMe)

>だれかから
>おれに電話

 

ま、こんなかんじ。