コールバック関数の実行タイミング

// この二つは実行タイミングが大違い。
// 1. コールバックではない
関数A(関数B()) // B完了後、その戻り値undefinedがAに渡される。
// 2. コールバック
関数A(関数B) // Aの中でBが実行される。

function 関数A(引数) {
  console.log('A')
  if (引数) {
    引数()
  }
}

function 関数B() {
  console.log('B')
}